Online Tax System is a web-based application designed to help users calculate their income tax based on Indian tax slabs (FY 2024-25). The system provides a user-friendly interface to input financial details and returns structured results with tax liability and savings suggestions. It also allows users to track their previous calculations.
- Frontend: Built using React.js with Material UI, Tailwind CSS, Redux, and React Router.
- Backend: A RESTful API using Node.js + Express.js.
- Database: MySQL for storing previous tax calculations.
- Tax Calculation: Implements Indian Income Tax Slabs (FY 2024-25) with relevant deductions.
- User Interaction: Users can calculate, view history, and delete previous records.
- React.js
- Tailwind CSS
- Redux
- React Router
- Material UI
- Formik + Yup (for form validation)
- Node.js
- Express.js
- MySQL
Ensure you have the following installed:
- Node.js (v16 or later)
- MySQL
- Git
git clone https://github.com/yourusername/online-tax-system.git
cd online-tax-systemcd server
npm installCreate a .env file inside the server directory and configure:
PORT=5000
DB_HOST=your_mysql_host
DB_USER=your_mysql_user
DB_PASSWORD=your_mysql_password
DB_NAME=your_database_namenpm startThe backend will run at http://localhost:5000
cd ../client
npm install
npm startThe frontend will run at http://localhost:3000
https://tax-busj.onrender.com
- Endpoint:
POST /api/calculate-tax - Description: Calculates tax based on provided details.
- Request Body:
{
"annualIncome": 1200000,
"investments": 150000,
"hra": 50000,
"lta": 20000,
"otherDeductions": 30000,
"otherIncome": 10000
}- Response:
{
"taxableIncome": 1000000,
"taxPayable": 80000,
"recommendations": [
"Invest more in 80C (PPF, ELSS, LIC) to save tax",
"Consider NPS for extra deductions under 80CCD(1B)"
]
}- Endpoint:
GET /api/history - Description: Fetches the previous tax calculations.
- Response:
[
{
"id": 1,
"annualIncome": 1200000,
"taxableIncome": 1000000,
"taxPayable": 80000,
"date": "2025-02-17T12:34:56Z"
}
]- Endpoint:
DELETE /api/history/:id - Description: Deletes a tax record.
- Response:
{ "message": "Record deleted successfully" }Feel free to contribute by submitting issues and pull requests. Follow the standard GitHub workflow:
- Fork the repository
- Create a new branch (
git checkout -b feature-branch) - Commit changes (
git commit -m "Added new feature") - Push to the branch (
git push origin feature-branch) - Create a Pull Request
MIT License
For any issues, contact dhruvrastogi2004@gmail.com.