A freelancer invoice and payment tracking platform. Bright Pixel Creative uses it to manage invoices from freelance contractors. Contractors submit invoices, the agency marks them paid or pending, and everyone tracks payment status through a shared web interface.
- Language: JavaScript (Node.js)
- Framework: Express.js
- Database: SQLite (via better-sqlite3)
- Templating: EJS
- Testing: Jest
Clone the repository, then:
# Install dependencies
npm install
# Start the application
npm startThe database is created and seeded with sample data automatically on first run.
The app will be available at http://localhost:3000.
# Run all tests
npm test
# Run tests with coverage
npm run test:coverage| Command | Description |
|---|---|
npm start |
Start the application |
npm test |
Run all tests |
npm run test:coverage |
Run tests with code coverage |
npm run seed |
Re-seed the database |
gigpay/
├── models/ # Data models (Freelancer, Project, Invoice)
├── routes/ # Express route handlers
├── views/ # EJS templates
├── tests/ # Jest test suite
├── docs/ # Project documentation
│ ├── SPEC.md # Product specification
│ └── TEST_PLAN.md # Test plan
├── db.js # Database connection and setup
├── seed.js # Sample data seeder
├── server.js # Application entry point
└── package.json
This project is licensed under the MIT License. See LICENSE for details.