clone of repo on github
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
buttercat1791 e87aa77deb Run `deno fmt` 3 months ago
.cursor/rules don't add date to AI comments 7 months ago
.playwright-mcp Merge wiki links and dark mode improvements 4 months ago
.vscode Merge issue#137#118-table-of-contents into feature/text-entry - integrated ToC functionality 8 months ago
doc Run `deno fmt` 3 months ago
nips Run `deno fmt` 3 months ago
src Run `deno fmt` 3 months ago
static Tidied up and display rudimentary ToC. Updated screenshots. 10 months ago
test_data/AsciidocFiles all tests passing 7 months ago
tests Run `deno fmt` 3 months ago
.dockerignore Add .dockerignore based on Bun guide 1 year ago
.env.example Add documentation, test scripts, and NIP-09 reference 4 months ago
.gitignore Successful implementation of event search and userBadges. 10 months ago
.onedev-buildspec.yml rudimentary LaTeX implementation for Markup 8 months ago
.prettierrc rudimentary LaTeX implementation for Markup 8 months ago
CLAUDE.md Run `deno fmt` 3 months ago
Dockerfile build: merge changes from branch fix/no-ref/deno-security into mobile-hotfix branch and close pr #61 7 months ago
LICENSE initial commit 2 years ago
README.md Refactor markup generator for embedded events into Svelte snippets 7 months ago
TECHNIQUE-create-test-highlights.md Run `deno fmt` 3 months ago
TEST_SUMMARY.md Run `deno fmt` 3 months ago
WIKI_TAG_SPEC.md Run `deno fmt` 3 months ago
check-publication-structure.js Run `deno fmt` 3 months ago
create-test-comments.js Run `deno fmt` 3 months ago
create-test-highlights.js Run `deno fmt` 3 months ago
deno.json fixed build and worked on memory leak 7 months ago
deno.lock Fix errors surfaced by Svelte check 3 months ago
docker-compose.yaml fix(compose): update the docker compose file to build correctly 8 months ago
import_map.json fix build errors 3 months ago
maintainers.yaml rudimentary LaTeX implementation for Markup 8 months ago
package-lock.json fix build errors 3 months ago
package.json Add documentation, test scripts, and NIP-09 reference 4 months ago
playwright.config.ts Refactor markup generator for embedded events into Svelte snippets 7 months ago
postcss.config.js Ran `deno fmt` 5 months ago
svelte.config.js Migrate to Deno for Docker deployment 1 year ago
test_output.log all tests passing 7 months ago
tsconfig.json Open #11 12 months ago
vite.config.ts Update, explode and break styles and components 5 months ago

README.md

Roman scrolls

Alexandria

Alexandria is a reader and writer for curated publications, including e-books. For a thorough introduction, please refer to our project documention, viewable on Alexandria, or to the Alexandria About page.

It also contains a universal event viewer, with which you can search our relays, some aggregator relays, and your own relay list, to find and view event data.

Issues and Patches

If you would like to suggest a feature or report a bug, please use the Alexandria Contact page.

You can also contact us on Nostr, directly.

Developing

Make sure that you have Node.js (v22 or above) or Deno (v2) installed.

Once you've cloned this repo, install dependencies with NPM:

npm install

or with Deno:

deno install

then start a development server with Node:

npm run dev

or with Deno:

deno task dev

Building

Alexandria is configured to run on a Node server. The Node adapter works on Deno as well.

To build a production version of your app with Node, use:

npm run build

or with Deno:

deno task build

You can preview the (non-static) production build with:

npm run preview

or with Deno:

deno task preview

Docker + Deno

This application is configured to use the Deno runtime. A Docker container is provided to handle builds and deployments.

To build the app for local development:

docker build -t local-alexandria -f Dockerfile .

To run the local development build:

docker run -d -p 3000:3000 local-alexandria

Testing

These tests are under development, but will run. They will later be added to the container.

To run the Vitest suite we've built, install the program locally and run the tests.

npm run test

For the Playwright end-to-end (e2e) tests:

npx playwright test

Markup Support

Alexandria supports both Markdown and AsciiDoc markup for different content types. For a detailed list of supported tags and features in the basic and advanced markdown parsers, as well as information about AsciiDoc usage for publications and wikis, see MarkupInfo.md.