{"id":13672611,"url":"https://github.com/fairingrey/actix-realworld-example-app","last_synced_at":"2025-04-27T22:32:28.386Z","repository":{"id":37888985,"uuid":"173887859","full_name":"fairingrey/actix-realworld-example-app","owner":"fairingrey","description":"[UNMAINTAINED] Implementation of the RealWorld backend API spec in Actix, Rust's powerful actor system and most fun web framework.","archived":false,"fork":false,"pushed_at":"2023-06-14T16:10:10.000Z","size":423,"stargazers_count":522,"open_issues_count":24,"forks_count":71,"subscribers_count":15,"default_branch":"master","last_synced_at":"2024-11-11T10:42:36.439Z","etag":null,"topics":["actix","actix-web","backend","backend-server","realworld-backend","rust","web"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fairingrey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-03-05T06:25:57.000Z","updated_at":"2024-11-05T20:24:40.000Z","dependencies_parsed_at":"2024-01-14T16:03:59.929Z","dependency_job_id":"6d29cfc3-0969-421f-8a89-dc276b648c35","html_url":"https://github.com/fairingrey/actix-realworld-example-app","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fairingrey%2Factix-realworld-example-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fairingrey%2Factix-realworld-example-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fairingrey%2Factix-realworld-example-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fairingrey%2Factix-realworld-example-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fairingrey","download_url":"https://codeload.github.com/fairingrey/actix-realworld-example-app/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251219601,"owners_count":21554444,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actix","actix-web","backend","backend-server","realworld-backend","rust","web"],"created_at":"2024-08-02T09:01:41.544Z","updated_at":"2025-04-27T22:32:27.889Z","avatar_url":"https://github.com/fairingrey.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# ![RealWorld Example App](logo.png)\n\n\u003e ### [Actix](https://actix.rs/) codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the [RealWorld](https://github.com/gothinkster/realworld) spec and API.\n\n❗ (2021/05/13) This codebase is currently unmaintained, and I am not interested in maintaining it. This relies on an old version of Actix -- developers who want to learn Actix should probably read the latest docs at the [Actix website](https://actix.rs/).\n\nThis codebase was created to demonstrate a fully fledged fullstack application built with [Actix](https://actix.rs/) including CRUD operations, authentication, routing, pagination, and more. CORS, however, is not yet added.\n\nThis implementation is not reviewed. See the [Contributing](#contributing) section below.\n\nFor more information on how this works with other frontends, head over to the [RealWorld](https://github.com/gothinkster/realworld) repo.\n\n## How it works\n\nThis is an application written in [Rust](https://www.rust-lang.org/) that utilizes [Actix](https://actix.rs/) for developing the backend web service that powers the RealWorld application.\n\nYou can view a full list of crates being used in [Cargo.toml](./Cargo.toml), but here are some of the main ones of note:\n\n* [Actix](https://actix.rs/) - a powerful Actor framework\n* [Chrono](https://github.com/chronotope/chrono) - a Date and Time library for Rust\n* [Failure](https://rust-lang-nursery.github.io/failure/) - a system for creating and managing errors in Rust\n* [Futures](https://docs.rs/futures/0.1.25/futures/) - Zero-cost Futures in Rust\n* [jsonwebtoken](https://github.com/Keats/jsonwebtoken) - Create and parses JWT (JSON Web Tokens)\n* [libreauth](https://github.com/breard-r/libreauth) - a collection of tools for user authentication\n* [Serde](https://serde.rs/) - a framework for serializing and deserializing Rust data structures efficiently and generically\n* [Uuid](https://github.com/uuid-rs/uuid) - Generate and parse UUIDs\n* [validator](https://github.com/Keats/validator) - Simple validation for Rust structs\n\n## Getting started\n\n* Install [Rust](https://www.rust-lang.org/)\n* Install [PostgreSQL](https://www.postgresql.org/) if you don't have it already.\n* Install the [Diesel CLI](https://github.com/diesel-rs/diesel/tree/master/diesel_cli) with the `postgres` feature enabled.\n* Clone this repo to a folder on your computer.\n* Copy (`cp`) [.env.example](./.env.example) to `.env` within this directory, and change the environment variables accordingly to your system.\n* Setup your database by running `diesel database setup`. Make sure it has completed successfully.\n* Build this project with `cargo build`. You are welcome to compile with `--release` if you'd like.\n* Run with `cargo run`.\n* The API URL will be whatever the `BIND_ADDRESS` value is in `.env` with the `/api` path included e.g. `https://127.0.0.1:3000/api`. Set it as such in your REST client ([Postman](https://www.getpostman.com/), [Insomnia](https://insomnia.rest/), etc.), import the [postman collection](https://github.com/gothinkster/realworld/blob/master/api/Conduit.postman_collection.json) and start testing it out!\n\n## Contributing\n\nFeel free to take a look at the current issues in this repo for anything that currently needs to be worked on.\n\nYou are also welcome to open a new issue if you see something is missing or could be improved upon.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffairingrey%2Factix-realworld-example-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffairingrey%2Factix-realworld-example-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffairingrey%2Factix-realworld-example-app/lists"}