Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/barbaracalderon/the-12-barcodes-api
The "12 barcodes API" provides a simple and efficient way to generate barcodes for your applications.
https://github.com/barbaracalderon/the-12-barcodes-api
api barcode barcodes code128 code39 ean13 ean14 ean8 flask flask-api gs1-128 html5up isbn-10 isbn-13 issn jan pzn7 rest-api restful-api upc-a
Last synced: 26 days ago
JSON representation
The "12 barcodes API" provides a simple and efficient way to generate barcodes for your applications.
- Host: GitHub
- URL: https://github.com/barbaracalderon/the-12-barcodes-api
- Owner: barbaracalderon
- License: other
- Created: 2024-02-06T21:27:07.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-02-16T01:29:35.000Z (9 months ago)
- Last Synced: 2024-02-16T02:31:08.082Z (9 months ago)
- Topics: api, barcode, barcodes, code128, code39, ean13, ean14, ean8, flask, flask-api, gs1-128, html5up, isbn-10, isbn-13, issn, jan, pzn7, rest-api, restful-api, upc-a
- Language: SCSS
- Homepage: https://the-12-barcodes-api.onrender.com
- Size: 1.92 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# The 12 Barcodes API
[**The 12 Barcodes API**](https://the-12-barcodes-api.onrender.com/) is a user-friendly RESTful API designed to provide a simple and practical solution for generating barcodes in applications. Developed in the Flask ecosystem and adopting the MVC architecture, this API offers ease of integration and flexibility. It forgoes the traditional database setup, streamlining the development process and reducing complexity. Checkout [**The 12 Barcodes API Swagger**](https://the-12-barcodes-api.onrender.com/swagger-ui) documentation.
This API may be of particular interest to **developers, event organizers, manufacturers and suppliers, library technicians and archivists, students and educators**.
![The 12 Barcodes API landing page](page.png)
## AuthorI'm Barbara Calderon, a software developer from Brazil.
- [Github](https://www.github.com/barbaracalderon)
- [Linkedin](https://www.linkedin.com/in/barbaracalderondev)
- [Twitter](https://www.x.com/bederoni)## Run locally
### 1. Clone the repo
```bash
git clone [email protected]:barbaracalderon/the-12-barcodes-api.git
```### 2. Enter the project directory
```bash
cd project-name
```### 3. Install dependencies
Make sure you have Python installed.
```bash
pip install -r requirements.txt
```### 4. Run
```bash
gunicorn --bind "0.0.0.0:80" wsgi:app
```## API Documentation
#### HTTP
| Method | Returns | Object Format |
|-------------|-------------------------------|-----------------|
| GET | Retrieves barcode information | JSON |
| POST | Retrieves barcode image | PNG |#### POST endpoints
| Endpoint | Parameter | Type | Description |
|------------|----------------|--------|-------------|
| /ean-8 | `product_data` | String | Required |
| /ean-14 | `product_data` | String | Required |
| /gs1-128 | `product_data` | String | Required |
| /isbn-10 | `product_data` | String | Required |
| /isbn-13 | `product_data` | String | Required |
| /issn | `product_data` | String | Required |
| /jan | `product_data` | String | Required |
| /code-128 | `product_data` | String | Required |
| /code-39 | `product_data` | String | Required |
| /pzn7 | `product_data` | String | Required |
| /upc-a | `product_data` | String | Required |## Stack used
**Frontend**
- HTML5UP
- SCSS
- Javascript**Backend**
- Flask
- Flask-Smorest
- Marshmallow
- BytesIO
- GUnicorn## Improvements
Implementing **tests** for this project will significantly enhance its reliability and stability. With the test directory already set up using Poetry and pytest, we think there is a foundation for creating comprehensive test suites. Hopefully they will be coming soon to further strengthen the project's robustness and maintainability.
## ContributionsEncouraging contributions from the community is vital for the success and growth of any project. We could greatly improve by adopting tests.
**Reporting Issues**: If you encounter any bugs, glitches, or unexpected behavior, please don't hesitate to report them. You can do so by opening an issue on our GitHub repository. Be sure to include detailed information about the problem you're experiencing, including steps to reproduce it and any relevant error messages.
**Submitting Pull Requests**: We welcome contributions in the form of code fixes or improvements to existing functionality. If you'd like to contribute code, please submit a pull request on GitHub. Please include documentation for any changes you propose.
## License
[GNU General Public Licence v3.0](https://choosealicense.com/licenses/gpl-3.0/)