Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/beatrizfriso/librarian
This API is designed to be easy to use, with clear documentation and a simple, intuitive interface. This repository was made to test my .NET and C# studies.
https://github.com/beatrizfriso/librarian
azure azure-devops csharp ddd-architecture dotnet library library-management-system study-notes study-project
Last synced: 19 days ago
JSON representation
This API is designed to be easy to use, with clear documentation and a simple, intuitive interface. This repository was made to test my .NET and C# studies.
- Host: GitHub
- URL: https://github.com/beatrizfriso/librarian
- Owner: beatrizfriso
- Created: 2023-04-03T02:46:51.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-03T00:12:08.000Z (about 1 year ago)
- Last Synced: 2024-11-18T05:35:14.404Z (3 months ago)
- Topics: azure, azure-devops, csharp, ddd-architecture, dotnet, library, library-management-system, study-notes, study-project
- Language: C#
- Homepage:
- Size: 333 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Librarian 📚
Librarian API is a .NET-based web API for managing a book library, designed for study purposes. It provides endpoints for adding, retrieving, updating, and deleting books in a book library, and serves as a learning resource for understanding API development using .NET technologies.## Features 💻
Librarian API will include the following features:
- [x] CRUD (Create, Read, Update, Delete) operations for managing books in a library.
- [ ] Token-based authentication and authorization for securing API endpoints.
- [ ] Swagger documentation for easy API exploration and testing.
- [ ] Follows RESTful API design principles.
- [ ] Utilizes best practices for .NET development, including dependency injection, data access with Entity Framework Core, and exception handling.## Installation 🛠
To install and run the Librarian API, follow these steps:
> 1. Clone the repository to your local machine using the following command:
![image](https://user-images.githubusercontent.com/101422055/230737988-58141b28-f1cd-41a7-8cf7-a2bbe6b4b43e.png)
> 2. Change to the directory where Librarian API is cloned:
![image](https://user-images.githubusercontent.com/101422055/230738017-0108fe1d-f356-45fd-83c1-ac2ab0fc724a.png)
> 3. Install the required dependencies by running the following command:
![image](https://user-images.githubusercontent.com/101422055/230738100-a001f71b-5904-4fcc-b52e-89d076f13e55.png)
> 4. Build the solution by running the following command
![image](https://user-images.githubusercontent.com/101422055/230738162-39211da5-c396-4cd0-a74a-4b12ce643327.png)
> 5. Run the API using the following command:
![image](https://user-images.githubusercontent.com/101422055/230738222-3bea043d-580a-4460-a9d2-dc823d0dfda2.png)
> 6. The API will be hosted at https://localhost:5001 by default. You can access it using a web browser or a tool like [Postman](https://www.postman.com/) for API testing.
## Usage ✏️
The Librarian API provides the following endpoints for managing a book library:
``` GET /api/books: Retrieves all books in the library. ```
``` GET /api/books/{id}: Retrieves a specific book by its ID. ```
``` POST /api/books: Adds a new book to the library. ```
``` PUT /api/books/{id}: Updates an existing book by its ID. ```
``` DELETE /api/books/{id}: Deletes a book from the library by its ID. ```
## Contributing 💬
This repository is intended for study purposes only and is _not currently_ open for external contributions.## Contact
![]()
If you have any questions or suggestions about the Librarian API, please feel free to [contact me](https://www.linkedin.com/in/beatrizfriso/). I appreciate your feedback and would be happy to assist you 💜