Awesome
Source code for api.l3x.in
Source code that powers REST APIs at https://api.l3x.in/
Setup
Create a config.mk
file using config.example.mk
as template, then run:
make all
Architecture
AWS CDK man app and stacks are responsible for deploying/destroying all the things, no interaction whatsoever needed via the web console.
Each applications live in a dedicated Python package under the lib/stacks
folder.
The stack package includes the CDK code required for deployment (in __init__.py
) and the .py
Lambda files.
Project code structure
.
│ # CLI utilities
├── bin/
│
├── lib/
│ │ # Main CDK application
│ ├── cdk.py
│ │
│ │ # CDK stacks
│ ├── stacks
│ │ │
│ │ ├── <stack_1>
│ │ │ ├── __init__.py # CDK resources
│ │ │ └── ... # all the rest, including Lambda code, Lambda Layers packages, etc.
│ │ │
│ │ └── <stack_2>
│ │ ├── __init__.py
│ │ └── ...
│ │
│ │ # Shared library
│ └── utils/
│
│ # To enable contrubutions and maintainability
├── CHANGELOG.md
├── LICENSE
├── README.md
│
├── Makefile # Various commands, like `deploy`, `diff`, etc.
├── VERSION # Source of truth for current VERSION of this software
│
│ # CDK metadata
├── cdk.context.json
├── cdk.json
│
│ # ENV variables template for `config.mk` file
├── config.config.mk
│
│ # Unit tests
└── test/
Contributions / Contacts
Pull requests are welcome.
You can also send me a message from the blog contact page... or a POST request to https://api.l3x.in/contact if you don't like browsers ;)
Commit messages and CHANGELOG
Following Conventional Commits specification to easily keep the CHANGELOG
up to date