memorianexus

module
v0.0.0-...-969301a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 13, 2024 License: MIT

README

Memoria Nexus

Memoria Nexus is a Go backend prototype for memory-assisted study workflows. The current repository is not a complete web learning product: it contains a Go module, API/service scaffolding, database migrations, generated API docs, and tested memory-curve calculation code.

Current Status

Implemented and verifiable today:

  • Go module: github.com/bagaking/memorianexus
  • HTTP backend entrypoint using Gin, Gorm, MySQL, Redis, and Swagger wiring
  • Route scaffolding for profiles, items, books, tags, dungeons, campaigns, analytics, NFTs, achievements, operations, and system endpoints
  • Memory-curve review calculation package in pkg/memcurve with unit tests
  • Tag package tests in pkg/tags
  • Makefile target make test, which runs go test ./...
  • GitHub Actions workflow .github/workflows/test.yml, which runs make test on pushes to main/master and on pull requests
  • Docker-oriented development and deployment assets, including migrations and a Dockerfile

Prototype or scaffolded areas:

  • Review session, reminder, and core analytics packages under src/core/ are planned extensions with placeholder implementations, not production-complete features.
  • The analytic module currently registers handlers, but those handlers do not yet return analytics data.
  • Several gamification and NFT-facing modules expose route shapes before full business behavior is implemented.
  • No React, Redux, Sass, or other frontend application is present in this repository.
  • Local runtime setup still depends on external services and development configuration; the most reliable lightweight validation path is the Go test suite.

Project Layout

See Project Structure for the current code layout. Generated Swagger output is available under doc/.

Local Validation

Run the Go test suite before opening a pull request:

make test

This target runs:

go test ./...

Development Notes

  • Use the Makefile for common local tasks.
  • Use the Docker and migration files under deployment/ and dev_memorianexus/ when working on service-level runtime setup.
  • Treat user-facing study flows, reminders, review sessions, analytics dashboards, and frontend UI as unfinished until their handlers and tests are implemented.

License

Memoria Nexus is licensed under the MIT License. See LICENSE for more information.

Directories

Path Synopsis
Package doc Code generated by swaggo/swag.
Package doc Code generated by swaggo/swag.
internal
repository
Package repository provides Redis cache logic implementation.
Package repository provides Redis cache logic implementation.
utils
Package utils provides utility functions for internal use.
Package utils provides utility functions for internal use.
pkg
lark command
memcurve
Package memcurve provides data models of the memory curve.
Package memcurve provides data models of the memory curve.
src
core
Package handlers provides API request handlers.
Package handlers provides API request handlers.
core/analytics
Package analytic provides analytic reporting logic.
Package analytic provides analytic reporting logic.
core/interfaces
Package interfaces provides port definitions for internal and external communication.
Package interfaces provides port definitions for internal and external communication.
core/reminder
Package reminder provides reminder service implementation.
Package reminder provides reminder service implementation.
core/review
Package review provides review session management logic.
Package review provides review session management logic.
def
gw

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL