File Tree

This page examines the organization of AxAp's file tree.

Overview

The AxAp server stores all of its files in a single tree:

.../
| Admin/...
| Bench/...
| Import/...
| System/...
| Work_prod/...

Admin Directory

The Admin directory contains various administrative files. Because some of the information they contain is sensitive, we do not provide online access to their contents.

.../Admin/
| _private/
| | https_server.crt     # HTTPS certificate file 
| | https_server.key     # HTTPS key file 
| | user_accounts.yaml   # usernames, passwords, etc. 
| | user_setup.yaml      # session setup presets
| _reference/
| | ft_pandocs.yaml      # file types from Pandocs
| | ft_pygments.yaml     # file types from Pygments
| | ft_zoo.yaml          # file types from the web
| epub_docs.yaml         # status of EPUB documents
| file_trees.yaml        # status of file trees
...

Bench Directory

The Bench directory contains miscellaneous (WIP) file trees.

.../Bench/
| AxArd/...         # Accessible Arduino
| Samples/...       # sample data files, etc.
| User/...          # EPUB user files

Import Directory

The Import directory contains files that should be imported.

.../Import/
| EPUB/
| | Samples/*.epub  # EPUB sample documents
| | User/*.epub     # EPUB user documents

System Directory

The System directory contains axap, the AxAp server. The current code tree contains ~8500 LOC, spread across several dozen files. The directory structure, though pretty simple, should serve us for a while.

.../System/axap/
| _ReadMe.md
| axap_main         # top-level code for app
| bin/*             # command-line utilities
| bin_hack/*        # command-line tests, etc.
| doc/              # internal documentation
| | design/*        # design notes
| | issues/*        # issue summaries, etc.
| lib/*/*.rb        # local Ruby libraries
| public/           # static (served) files
| | css/*.css       # Cascading Style Sheets
| | ext/...         # External client code
| | favicon.ico     # AxAp icon for browsers
| | js/*.js         # JavaScript code
| | robots.txt      # notice to web crawlers
| routes/*.rb       # Sinatra routing code
| views/
| | AxAp/*.erb      # administration, etc.
| | EPUB/*.erb      # EPUB documents
| | Files/*.erb     # other files (eg, text)
...

Work_prod Directory

The Work_prod directory is used for "working files" (e.g., imported EPUB documents):

.../Work_prod/
| _porch/*.epub     # EPUB documents, for import
| _sample/*         # sample files, for display
| 2017_0201/        # February 1, 2017
| | 095500_00_foo/  # data set 0 for 0955, local time
| | | Content/*     # main content, ready to perform
| | | Metadata/     # supporting information
| | | | axap_toc_*.yaml  # data for TOC generation
...


This wiki page is maintained by Rich Morin, an independent consultant specializing in software design, development, and documentation. Please feel free to email comments, inquiries, suggestions, etc!

Topic revision: r10 - 02 Feb 2017, RichMorin
This site is powered by Foswiki Copyright © by the contributing authors. All material on this wiki is the property of the contributing authors.
Foswiki version v2.1.6, Release Foswiki-2.1.6, Plugin API version 2.4
Ideas, requests, problems regarding CFCL Wiki? Send us email