Welcome to the InvoicePilot project! This Django-based web application helps manage and track invoices efficiently.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Python 3.8 or later
- Django 5.0.1
- Other dependencies (see requirements.txt)
-
Clone the repository:
git clone https://github.com/InternPulse/team-spacex-backend.git
-
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
source venv/bin/activate # On Windows, use 'venv\Scripts\activate'
-
Install dependencies:
pip install -r requirements.txt
-
Apply migrations:
python manage.py migrate
-
Run the development server:
python manage.py runserver
-
Access the Django admin interface at http://127.0.0.1:8000/admin/ to manage your application.
-
Explore the Invoice API at http://127.0.0.1:8000/api/invoices/.
-
Convert Item invoice to pdf at http://127.0.0.1:8000/api/generate_invoice_pdf/int:pk/.
We use Git for version control and follow a collaborative workflow:
Branching Model:
main
: Represents the latest stable release.Development
: Represents the latest development changes.- Feature branches: Create branches for new features or bug fixes.
Creating a Feature Branch:
git checkout development
git pull origin development
git checkout -b feature/your-feature-name
Work on the Feature:
Make changes, commit, and push your changes:
# Make changes, commit, and push
git add .
git commit -m "Description of changes"
git push origin feature/your-feature-name
Creating a Pull Request (PR):
Open a pull request from your feature branch to the development branch on the GitHub web interface.
Merging the Pull Request:
Once the PR is approved, you can merge it into the development branch.
Periodic Integration with Main:
git checkout main
git pull origin main
git merge development
git push origin main
If you'd like to contribute to this project, please follow these steps:
- Fork the repository on GitHub.
- Create a new branch and make your changes.
- Submit a pull request to the
Development
branch.
This project is licensed under the MIT License - see the LICENSE.md file for details.