My main github repo for my personal website. You can find it right here.
out/
contains the website once exported.
Look at the bottom of this readme to see how to compile this website.
- Preprocessor (preprocessor.py)
- compiles templates into final pages
- basic argument parsing
- add options for specifying source and destination directory
- add export functionality to create the ready webpage
- need to add directories to
site.map
to specify what to move to output folder - optimize images during export
- need to add directories to
- more robust directives for page specifiction (specific js, css, etc...)
- beautify output html for indentation & more
- add
selected
class to correct<li>
of nav - pull heavy media from lw839 file server
- create content generators for music and playlists
- create publish command that's given an scp command and exports website to destination
- clean up preprocessor (split into files, classes, etc...)
- eventually have a proper settings class
- add error handling
- color output
- only make
export
rmdir if compilation was successful - add
print
command that outputs all the settings it understands - create documentation for all .map files
- [-] figure out solution for growing /assets size (Update: finish migration to gdrive hosting)
- fix lack of gdrive hosting
- add instructions to readme on how to compile
- integrate music page into main page
- add testing
(this section can be seen in action here)
- Playlist pages
- create custom music player
- create custom entries for songs
- make playing animation affect body background
- parse playlist.json
- fetch relevant metadata
- extract album covers
- extract dominant colors from covers
- output all to some tbd js database
- integrate to preprocessor
(this section can be seen in action here)
-
Projects pages
- look into separating projects into separate pages
- automatically generate low res image previews
- setup automated tests for assets
- create .map project directive
- add music player project
- add lidar, kinect, and projectM
- add jvid page
- add NST and GPT projects
-
Website
- mobile responsiveness
- get rid of all hardcoded style from html
- completely reorganize main.css
- segment css into separate files
- create pretty spotify playlists page
- make playlist page update automatically
- add personal links to bottom of home page
- (plz one day) dark mode
- make website reach bottom of the page
- [-] add image onClick to make it bigger
- create projects page
- make each project page link to higher res version
- create webradio page
usage: preprocess.py [-h] [-v] [-o OUTPUT] [-m MAP] COMMAND ...
Precompiler for tristancharpentier.com
optional arguments:
-h, --help show this help message and exit
-v, --verbose print changes
-o OUTPUT, --output OUTPUT
set the output directory for export
-m MAP, --map MAP specify site.map generator
possible commands:
COMMAND
clean deletes compiled files
dryrun compiles without writing files
compile compiles in current dir project
export compiles & exports according to site.map
publish exports via scp according to publish.map
- Add a page
- create content page in content/
- add required assets and media to appropriate locations
- if should be nav-accessible, add entry into nav.html
- add directives to site.map