🤖 Citripio
A barebones linked entries log with crypto sprinkled on top 🐱🏍
Repo local setup
- Clone this repository with
git clone git@github.com:klujanrosas/citripio.git
- Navigate into the correct directory with
cd citripio
- Install dependencies with
yarn install
- Start the development server with
yarn start
Routes
List current entries in log
curl --request GET \
--url http://localhost:3000/
Write an entry into the log
curl --request POST \
--url http://localhost:3000/citripio \
--header 'Content-Type: application/json' \
--data '{
"message": "my cool message"
}'
Testing
Run all tests
Runs unit and integration tests on a single command.
yarn test
Run unit tests
All code under src/ will be scanned for tests which will then be executed.
yarn test:unit
Run integration tests
A server with a random (available) port will be spawned and killed immediately after tests finish running. Real GET/POST requests will be fired towards this temporary server.
yarn test:integration
Inner workings
For simplicity all log entries(writes) are stored in memory, which then is periodically flushed onto the filesystem to prevent locking the log file.