Giter Site home page Giter Site logo

larajihed / expenses-tracker-app Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 22 KB

This repository contains the backend code for the Expenses Tracker App, a C# application designed to manage expenses. It provides APIs for creating, retrieving, updating, and deleting expenses, along with features for category management, filtering, sorting, and reporting.

C# 100.00%

expenses-tracker-app's Introduction

Expenses Tracker App (Backend)

This is the README file for the backend of the Expenses Tracker App, a C# application designed to manage expenses. The backend is responsible for handling data storage, retrieval, and processing.

Features

  • User authentication and authorization
  • Expense creation, retrieval, update, and deletion
  • Category management
  • Filtering and sorting expenses
  • Reporting and statistics generation

Technologies Used

The backend of the Expenses Tracker App is built using the following technologies:

  • C# programming language
  • ASP.NET Core framework
  • Entity Framework Core for data access and ORM
  • SQL Server for data storage
  • JWT (JSON Web Tokens) for authentication and authorization
  • Swagger for API documentation
  • Unit testing frameworks (e.g., NUnit, xUnit) for testing

Getting Started

To set up and run the Expenses Tracker App backend, follow these steps:

  1. Clone the repository: git clone https://github.com/your/repository.git

  2. Install the required dependencies using NuGet: dotnet restore

  3. Create a SQL Server database and update the connection string in the appsettings.json file:

"ConnectionStrings": {
    "DefaultConnection": "YourConnectionString"
}
  1. Apply the database migrations to create the required tables: dotnet ef database update

  2. Build the project: dotnet build

  3. Run the application: dotnet run

  4. Access the API documentation using Swagger by navigating to: Access the API documentation using Swagger by navigating to:

8-Start making API requests to manage expenses.

API Endpoints

The following API endpoints are available for managing expenses: GET /api/expenses: Retrieve a list of all expenses. GET /api/expenses/{id}: Retrieve details of a specific expense. POST /api/expenses: Create a new expense. PUT /api/expenses/{id}: Update details of a specific expense. DELETE /api/expenses/{id}: Delete a specific expense. GET /api/categories: Retrieve a list of all categories. POST /api/categories: Create a new category.

Security

The Expenses Tracker App backend utilizes JWT for authentication and authorization. When making API requests, include an authorization header with a valid JWT token: Authorization: Bearer {your_token} To obtain a JWT token, send a POST request to the /api/auth/login endpoint with valid user credentials. The response will contain the JWT token.

Contributing

Contributions to the Expenses Tracker App are welcome! If you find any issues or have ideas for improvements, please submit an issue or pull request to the repository.

License

The Expenses Tracker App is open source and released under the MIT License.

Acknowledgements

This Expenses Tracker App backend was created by Jihed Larayedh.

expenses-tracker-app's People

Contributors

larajihed avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.