imadj's People
imadj's Issues
Add left and half rotations (and tests)
Need to add left and half rotation functions, requires:
- arguments to rotation function
- formulae for adjusting pixels
- unit tests for comparing bytes
- integration tests for cli commands
Dockerise
Add Dockerfile
and makefile
to containerise the API.
This will make future deployments much easier.
Add API for imadj
Create API using fastapi.
This will allow us to (with web server) access the imadj functions remotely.
Refactor out bmp specific functions
In the future imadj
may be extended to support other image formats.
It will be good to have the .bmp
-specific functions separate from core cli functions.
Use DVC for test data
I don't want to commit lots of images, but I do want lots of tests.
Let's use DVC to take care of test data.
I'll use and s3 bucket for remote storage.
add flip option
Add tests, bmp functions and cli option to flip images.
Should be able to both flip and rotate in the same cli command.
feat(python): add pytest and first tests
terraform for deploy
Add terraform
Core infra:
- static IP
- Route53
- ECR
- security groups
-
infracost
for cost estimation
Deploy-specific infra:
- set up network
- provision server
-
cloud-init.yaml
for user data- Dockerised Caddy webserver (for https)
- Dockerised API
-
systemd
services for webserver and api
optimise bmp algorithm
Core algorithm can be optimised to be faster and cleaner
Add support for rectangular images
So far imadj functions assume a square image.
Need to add support for rectangular images.
Need integration tests (for cli commands) not just unit tests
add ci tests + linting
Add ci workflow to run tests and check linting.
Will use same set up as locally, however I'm not sure how to include special rules to handle conflicts between linting libraries.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.