blinkies.cafe is a web application that allows users to generate and customize animated blinkies (small GIFs with text and styles). It provides a fun and nostalgic way to create personalized graphics.
- Blinkie Generator: Create custom blinkies with various styles, fonts, and colors.
- Gallery: Browse and explore pre-made blinkies.
- Customization: Adjust text, font, colors, and animation speed.
- API: Programmatic access to generate blinkies.
assets/blinkies-bg/
: Background and overlay images for blinkies.assets/blinkies-frames/
: Temporary storage for blinkie frames during generation..fonts/
: Extracted font files used in blinkie generation.
public/static/
: Static files such as CSS, JavaScript, and images.public/blinkies-public/display/
: Examples of generated blinkies.
src/blinkiegen.js
: Main script for generating blinkies.src/controller.js
: Handles server-side logic and routing.src/routes.js
: Defines API and static file routes.src/data/
: Contains data files for blinkie templates, fonts, and more.
views/pages/
: EJS templates for rendering HTML pages.views/pages/components/
: Reusable HTML components.
logs/
: Runtime logs for debugging and monitoring.
blt.sh
: Bash script for managing the Docker container.src/gen/gen-blinkie.sh
: Legacy script for blinkie generation.
- Clone the repository:
git clone https://github.com/yourusername/blinkies.cafe.git
- Navigate to the project directory:
cd blinkies.cafe
- Install dependencies:
npm install
- Start the server:
npm start
- Open your browser and navigate to
http://localhost:3000
.
The blt.sh
script provides several commands to manage the Docker container for the project:
-
Build the Docker image:
./blt.sh --build
-
Run the container in production mode:
./blt.sh --run
-
Test the container in development mode:
./blt.sh --test
-
Remove all stopped containers:
./blt.sh --rm
-
Remove all unused Docker images:
./blt.sh --rmi
-
Pull the latest Docker image:
./blt.sh --pull
-
Push the Docker image to the repository:
./blt.sh --push
-
Deploy to production:
./blt.sh --prod
- POST /api/pour: Generate a blinkie with custom parameters.
- GET /styleList.json: Retrieve a list of available styles.
- GET /sourceList.json: Retrieve a list of source URLs for blinkie styles.
The code in this project is licensed under the GNU General Public License v3.0. Original blinkies are licensed under CC BY.