Skip to content

locene/topos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Topos

A convenient TROW site search engine, powered by full-text search for an accelerated experience.

Try it now: https://topos.locene.com

Tech Stack

Layer Tech
Backend TROW API · Meilisearch · Axum · Valkey
Frontend Yew
CI / CD GitHub Actions
Deployment Docker · Debian (trixie-slim) · Nginx (alpine-slim)

To-Do

  • Implement Change Data Capture (CDC) mechanism to synchronize updated posts (pending TROW support)

How to Build

Prerequisites

Name Version Description
Rust 1.92.0+ Programming Language
Meilisearch Latest Full-Text Search Engine
Valkey Latest Cache

Clone the Repository

First, clone the project repository to your local machine:

git clone https://github.com/locene/topos.git
cd topos

Configure and Run

Backend

cd backend

Modify the .env.example file, renaming it to .env or .env.development.local based on your needs.

Here's an explanation of several key variables:

Name Description
TROW_API_URL TROW API endpoint. See documentation for the URL, usually https://api.trow.cc.
TROW_CLIENT_ID The Client ID for your TROW application. Obtain this by applying through TROW.
TROW_CLIENT_SECRET The Client Secret for your TROW application. Obtain this by applying through TROW.
ADMIN_TOKEN Token required for accessing backend Admin APIs.

After configuring the environment variables, run cargo run in the backend root directory.

Webapp

cd webapp

Modify src/config/config_dev.rs and src/config/config_prod.rs as needed.

Then, run cargo run in the webapp root directory.

Once it's running, simply open your browser and navigate to http://127.0.0.1:8080.

Contributor Notes

This project utilizes a high-privilege API provided by TROW (with extended rate limits). Consequently, TROW requires contributors to sign a Contributor License Agreement. All submissions to this repository are subject to the terms of this agreement.

License

AGPL-3.0

About

A convenient TROW site search engine, powered by full-text search for an accelerated experience.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors