decentralized and customizable links page on top of atproto ligo.at
atproto link-in-bio python uv

add placeholder home

+57 -14
+2 -2
src/main.py
··· 13 13 14 14 15 15 @app.route("/") 16 - def hello_world(): 17 - return "<3" 16 + def page_home(): 17 + return render_template("index.html") 18 18 19 19 20 20 @app.route("/<string:handle>")
+24 -12
src/static/style.css
··· 1 + :root { 2 + --color-background: #fff; 3 + --color-text: #333; 4 + --color-text-secondary: #aaa; 5 + } 6 + 7 + @media (prefers-color-scheme: dark) { 8 + :root { 9 + --color-background: #111; 10 + --color-text: #fff; 11 + } 12 + } 13 + 1 14 html { 2 15 font-feature-settings: 3 16 "kern" 1, ··· 7 20 } 8 21 9 22 body { 10 - background: #fff; 11 - color: #333; 23 + background: var(--color-background); 24 + color: var(--color-text); 12 25 font-size: 18px; 13 26 line-height: 20px; 14 27 font-family: "Inter", system-ui, sans-serif, ui-sans-serif; ··· 20 33 -moz-osx-font-smoothing: grayscale; 21 34 } 22 35 23 - @media (prefers-color-scheme: dark) { 24 - body { 25 - background: #111; 26 - color: #fff; 27 - } 36 + a { 37 + color: inherit; 28 38 } 29 39 30 40 .wrapper { ··· 41 51 margin: 0; 42 52 font-size: 1.5em; 43 53 font-weight: inherit; 44 - 45 - & a { 46 - color: inherit; 47 - text-decoration: none; 48 - } 49 54 } 50 55 51 56 header .tagline { ··· 91 96 padding: 1rem; 92 97 text-decoration: none; 93 98 } 99 + 100 + footer { 101 + color: var(--color-text-secondary); 102 + font-size: 14px; 103 + margin-top: 5em; 104 + text-align: center; 105 + }
+28
src/templates/index.html
··· 1 + <!doctype html> 2 + <html> 3 + <head> 4 + <meta charset="utf-8" /> 5 + <title>atlinks</title> 6 + <meta name="viewport" content="width=device-width, initial-scale=1" /> 7 + <link rel="stylesheet" href="{{ url_for('static', filename='inter.css') }}" /> 8 + <link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}" /> 9 + </head> 10 + <body> 11 + <div class="wrapper"> 12 + <header> 13 + <h1>atlinks</h1> 14 + <span class="tagline">name pending</span> 15 + </header> 16 + <p> 17 + Get your own links page for all your social profiles. Decentralized thanks to 18 + <a href="https://atproto.com/">AT Protocol</a>. 19 + </p> 20 + <p> 21 + Coming soon! 22 + </p> 23 + <footer> 24 + Made by <a href="/nauta.one">@nauta.one</a> 25 + </footer> 26 + </div> 27 + </body> 28 + </html>
+3
src/templates/profile.html
··· 28 28 </li> 29 29 {% endfor %} 30 30 </ul> 31 + <footer> 32 + made with <a href="/" target="_self">atlinks</a> 33 + </footer> 31 34 </div> 32 35 <!-- .wrapper --> 33 36 </body>