realworld
Version, currently main branch1 version
- main branchlatestOct 29, 2026
github.com/martenframework/realworld
A RealWorld application built with Marten.
Installation
# Add this to your shard.yml
dependencies:
realworld:
github: martenframework/realworld
branch: mainmain is a branch, not a release, so this tracks it rather than pinning a version.
Then run:
shards installshard.yml
- Crystal
- no constraint declared
Dependencies
Runtime Dependencies
- cmark*github: amauryt/cr-cmark-gfm, branch: master
- marten*github: martenframework/marten
- sqlite3*github: crystal-lang/crystal-sqlite3
- marten_auth>= 0.2.0github: martenframework/marten-auth
Development Dependencies
README
Marten codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API.
This codebase was created to demonstrate a fully fledged fullstack application built with the Marten web framework including CRUD operations, authentication, routing, pagination, and more.
We've gone to great lengths to adhere to the Marten community styleguides & best practices.
For more information on how to this works with other frontends/backends, head over to the RealWorld repo.
System requirements
Installation
If all the above system dependencies are properly installed on the target system, it should be possible to install the project using the following command:
$ make
This command will take care of the installation of the required dependencies (Crystal and Node.js) and will (i) build the development assets and (ii) setups the project's database using SQLite.
Running the development server
The development server can be started using the following command:
$ make server
The development server should be accessible at http://127.0.0.1:8000.
Frontend development
This project uses Gulp and Webpack to bundle the assets of the application. Client-side scripts are written using vanilla JS and the stylesheets used are the precompiled ones that are provided by the Realworld project. All the tools necessary to work on the assets of this project should've been installed when running make in the previous sections.
Client-side scripts are stored in the src/assets/build_dev folder. Whenever those scripts need to be recompiled, the following command can be used:
npm run gulp -- build
Finally, a Webpack dev server can also be launched in order to use hot reloading if necessary. To do so, the following command can be used:
npm run gulp -- webpack-dev-server
Note that the Marten development server should be started in another terminal after the Webpack dev server has been started.
Running the test suite
The test suite can be run using the following command:
$ make tests
Code quality checks can be triggered using the following command:
$ make qa
License
MIT. See LICENSE for more details.
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This branch
- Branch
main- Seen
- Oct 29, 2026
- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
github.com/martenframework/realworld
Metadata
- Created
- Aug 12, 2026
- Updated
- Nov 9, 2026
- Synced
- Nov 9, 2026
- Versions
- 1
