Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-do free.law G̶a̶t̶s̶b̶y̶ NextJS #44

Closed
18 of 19 tasks
mlissner opened this issue Jul 13, 2021 · 5 comments
Closed
18 of 19 tasks

Re-do free.law G̶a̶t̶s̶b̶y̶ NextJS #44

mlissner opened this issue Jul 13, 2021 · 5 comments

Comments

@mlissner
Copy link
Member

mlissner commented Jul 13, 2021

I've been investigating this for several months at this point and I think it's generally a good transition to make:

  1. Pelican is not getting much usage any more and basic bugs are not getting fixed (for example, the cache feature is totally broken and nobody noticed except for me).
  2. Gatsby has a ridiculously broad set of plugins that makes it really fast and powerful. Some of the starters are very good.
  3. The new design in Do a new homepage for Free Law Project #39 needs a new home and I'm not at all interested in doing it in Pelican
  4. Free.law is a useful playground to learn and experiment with new technologies. We're moving towards react a bit and considering using tailwindcss. Both are used in gatsby.
  5. Nobody aside from me and poor, poor @flooie have successfully gotten pelican installed and working locally.

OTOH, I've been working on this here and there for several months, and I must confess that I've had a real difficult time getting traction on this, but I think with a good block of time I can make it happen.

I'm going to use a MoSCoW analysis to work on a partial feature list so we can decide when it's ready.

MUST

  • Have extremely good performance
  • Have all the old blog posts
  • Use old URLs or redirect them
  • Have custom 404 page
  • Support the new homepage in Do a new homepage for Free Law Project #39
  • Have a favicon
  • Use Sitemap.xml files The linking is so good, I don't think it's needed.
  • Support old links and downloads from Pelican format
  • Do something with old Bootstrap HTML in markdown files
  • Use the free.law domain
  • Support HTTPS

SHOULD

COULD

WON'T

  • Use CSP headers
@litewarp
Copy link

Use NextJs instead of Gatsby. Less complicated, doesn't force you into GraphQL and with the SSR and SSG capabilities, there's no real advantage to gatsby anymore.

@mlissner
Copy link
Member Author

SSR

Selective serotonin reuptake?

@mlissner mlissner changed the title Re-do free.law using Gatsby Re-do free.law using ~Gatsby~ NextJS Jul 30, 2021
@mlissner mlissner changed the title Re-do free.law using ~Gatsby~ NextJS Re-do free.law G̶a̶t̶s̶b̶y̶ NextJS Jul 30, 2021
@mlissner
Copy link
Member Author

mlissner commented Jul 31, 2021

More todos:

  • Search for btn and similar bootstrap styles and re-do them
  • Search for captioned images and redo them
  • Find any remaining {filename} or other pelican syntax
  • Implement next-seo
  • Write project pages; move and update old ones
  • Add links to /projects/courtlistener.md
  • Do the tag pages
  • Add matomo.courtlistener.com (site ID 2)
  • Check for markdown tables of contents?
  • Get prettier working, configured, and run it
  • Update the readme
  • Figure out the <title> tag everywhere.
  • Review lighthouse score and fix

Old RSS feeds were at:

FEED_ALL_ATOM = 'feeds/all.atom.xml'
CATEGORY_FEED_ATOM = 'feeds/{slug}.atom.xml'
TAG_FEED_ATOM = 'feeds/tag/{slug}'
AUTHOR_FEED_ATOM = "feeds/{slug}.atom.xml"

The twitter open graph image is:

OPEN_GRAPH_IMAGE = 'android-chrome-192x192.png'

@mlissner
Copy link
Member Author

mlissner commented Aug 4, 2021

It's launched.

@mlissner
Copy link
Member Author

mlissner commented Aug 5, 2021

Post launch:

  • Check matomo
  • Sentry?
  • Remove AWS CDN, Lambda, S3

@mlissner mlissner closed this as completed Aug 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants