We live on the internet (let's be real).
To be fluent in "internet", you need text, and emoji, and ... memes! To have those, we need the animated gif.
So, in service of having fun, and owning our media and images, let's build ourselves our own database of meme goodness.
Gifrap is a self-hosted repository of animated gifs, and jpgs, etc.
- Rails 7.x
- Postgresql
- Rspec (factory_bot, cuprite, capybara)
- GoodJob
- Vite (w/vite_ruby)
- TailwindCSS
- StimulusJS
Run bin/setup
to:
- Create database
- Seed database
- Run the test suite
This is currently pre-alpha software - well in the throes of early development.
Below is the breakdown of features being built along with a couple of milestones.
- Generate temporary "visitor" user
- Generate models and create controller skeleton
- Upload image via web browser
- Integration with Shubox
- Rough layout and UI
- Nav
- Masonry layout of images
- Flash messages
- Upload and new image modal
- No account(s)/users. Log-in via email.
-
Images#show
- click to copy URL
-
Images#edit
- Add tags to image
- Add descriptions to image. (Allows for future retrieval of image via a phrase or file name -- matching "mark-cuban-taking-notes.gif" OR "taking-notes.gif" to the proper image)
- Convert gif to webm and mp4 (smaller files)
- Extract frame of gif to jpg/webp/avif
- Upload via URL
-
Images#index
- blur/obfuscate "nsfw" images
-
Images#show
- display tags
- fav image
-
Images#edit
- Tag image as "nsfw"
- Search for image(s)
- Search by tags and descriptions
- Order by owner (show me mine first), then others.
- Containerize/Dockerize each version, push to docker-hub
- Example docker-compose setup in README
- Slack bot. Respond to a message containing a string like "taking-notes.gif" and responding with the correct image.