Awesome
Minum example project
This is a simple project meant to demonstrate use of the Minum framework. A good starting point for reading this code is the Main and TheRegister class.
Quick start:
- To run:
./mvnw compile exec:java
then visit http://localhost:8080
Press ctrl+c to stop.
- To test:
./mvnw test
System requirements:
JDK version 21 is required, since it provides us the virtual threads we need.
Developed in two environments:
- MacBook Pro with OS 12.0.1, with OpenJDK 21
- Windows 10 64-bit professional, on Cygwin, OpenJDK 21
Step-by-step guide for installing Java on Windows:
- Download the binary by clicking here and selecting the Windows/x64 zip.
- Uncompress the zip file
- Add the home directory to your path. The home directory of Java is the one with "bin" and "conf" directories, among others. if you, for example, uncompressed the directory to C:\java\jdk-21, then in Windows you should add it to your path, following these instructions:
- Click the Windows start icon
- Type
env
to get the system properties window - Click on Environment Variables
- Under user variables, click the New button
- For the variable name, enter
JAVA_HOME
, and for the value, enterC:\java\jdk-21
- Edit your Path variable, click New, and add
%JAVA_HOME%\bin
First-time use
- Start the application (see above)
- Go to http://localhost:8080
- Soak up the austere beauty of the homepage
- Click on Auth
- Click on Register
- Enter some credentials, such as foo and bar, click Enter
- Enter them again (you're logging in this time)
- Click on Sample domain
- Click on Enter a name
- Enter some names, pressing Enter each time.
- Click Index
- Click on Photos
- Click on Upload
- Select an image, enter a short caption and longer description
- Click Submit
- Click Index
- Click on Auth
- Click on Logout
- Go view the other pages again
Directories:
- src: All the source code, including production and test code
- .git: necessary files for Git.
Root-level files:
- minum.config: a configuration file for the running app (a local / test-oriented version)
- .gitignore: files we want Git to ignore.
- LICENSE: the license to this software
- pom.xml: Maven's configuration file
- README.md: this file