Blog of Jeff A blog about programming and random other things.

8Sep/08link

Welcome to Django Chat Application Tutorial

Edit: These series of tutorials do not follow the normal Django philosophy.

Hello Roamers from the internet! I'm going to explain (in a series of tutorial posts) how to create Django application which is inspired from 37signals' Campfire. If you never heard of Campfire or have checked it out, I urge you to do so (it's pretty silly not knowing what you're producing by reading these tutorials. And if you never heard of Django, It's a python web application framework that focuses on a DIY (Don't Repeat Yourself) philosophy. This is, by no means, where I'll argue why Django is better than your favorite alternative web framework, but instead aid those that are interested in checking it out. Afterall, there are better places to flame over frameworks ;)

 

I hope these series of posts will help someone in learning how to use Django. I'll have to put a few disclaimers. Obviously, I'm not responsible if you manage to make your computer explode if you followed this tutorial (although that would be interesting), but I'm also no Django expert. In fact, this chat application is the second Django application I've made (zero if you exclude the documentation poll application). Also, this first post does not have any unique tutorial content. Rather, help anyone that needs to setup Django. What's worth noting is that what we're building is far from final production since it lacks many features such as:

  • Viewing & Searching chat history/uploads
  • Join multiple chat rooms at once
  • Displaying images inline chat messages
  • Administrative features (kicking, banning)
  • Kick-ass CSS Design (I suck at designing awesome-looking sites)
  • Undo/Redo support
  • Inviting users via email
These features (and more not listed) are exercises for the reader (aka, you) after completing these tutorials (if you don't choose to drop the project dead).

Assumptions

Also, since I don't want the series dragging to enternity, I'll make the following assumptions:

  • You understand (x)html and css (attributes, selectors, etc.)
  • You understand basic javascript (DOM tree anyone?)
  • You know basic python and have it installed
  • You can use a web browser and read English :D
  • Familiarity with your operating system
If you are weak on any of those areas, a quick google or consultation to your household computer expert would be advised (not me, I get plenty already :P )

Getting Started

Okay, are we ready to begin? Of course :)
Please note that I'll be using a Windows Machine, since I'm using a college-provided laptop.

  • Share/Bookmark

Recent Posts

Topics

Archives

Following

Links