From Fedora Project Wiki
Line 25: Line 25:


== Proposed Schedule ==
== Proposed Schedule ==
Week 1:
Week 1: do some research, setup a git repository for this project,
Week 2:
Week 2: make a database schema  <br>
Week 3:
Week 3: draw up a basic interface of how the web panel should look as well.
Week 4:
Week 4: write a webpage for the database according with layout designed in previous week <br>
Week 5:
Week 5: make sure webpage works, test it, fix bugs <br>
Week 6:
Week 6: write scripts to setup apache, ftp, create email accounts etc.. <br>
Week 7:
Week 7: make sure scripts are working, test it, fix bugs  <br>
Week 8:
Week 8: make webpage communicates with the scripts and setup the things automatically.
Week 9:
Week 9:
Week 10:
Week 10:

Revision as of 03:55, 24 March 2012

Abstract

the purpose of this idea is to write a webhosting control panel, 100% compatible with Fedora and Enterprise Linux, written in python and licensed under a GPL compatible license.

The control panel will be able to add/remove domains, manage apache, ftp, postfix email with dovecot(imap, pop3s, smtps) , dns, mysql, phpmyadmin, and will have roundcube as webmail.

Detailed Description.

this project will be done in 2 parts.

part 1 -> a webpage to add records into a database, when a email account is created a record will be inserted into database, when another mail account is removed the record will be deleted from database.

part 2 -> scripts to complete the tasks in linux, for example, one script will read the email accounts table and adjusts the postfix settings to make the email account works.


Importance

alot of people are hosting websites into the cloud (amazon, linode, rackspace and others) the people needs a free and easy to install control panel, just yum and pray and you're done.

What do we need to do?

1 - write a database schema, and make a webpage for it.
2 - write scripts to read the database and perform the tasks on Linux.
3 - make the webpage communicates with the scripts for automatically setup.
4 - package it and make it available into fedora/fedora epel respository's

Proposed Schedule

Week 1: do some research, setup a git repository for this project, Week 2: make a database schema
Week 3: draw up a basic interface of how the web panel should look as well. Week 4: write a webpage for the database according with layout designed in previous week
Week 5: make sure webpage works, test it, fix bugs
Week 6: write scripts to setup apache, ftp, create email accounts etc..
Week 7: make sure scripts are working, test it, fix bugs
Week 8: make webpage communicates with the scripts and setup the things automatically. Week 9: Week 10: Week 11: Week 12:

About me