• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
project logo

nmsilva

my-portfolio

Starter template for a markdown blog
Public
Like
my-portfolio
Home
Code
5
docs
3
posts
2
Layout.tsx
README.md
H
index.tsx
Environment variables
Branches
1
Pull requests
Remixes
History
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
docs
/
implementation.md
Code
/
docs
/
implementation.md
Search
…
Viewing readonly version of main branch: v16
View latest version
implementation.md

Implementação Actual

O portfolio é um HTTP val em Deno que usa React com Server-Side Rendering (SSR). Não há cliente JS — tudo renderizado no servidor e enviado como HTML estático.


Funcionalidades

1. Hit Counter

  • SQLite via @std/sqlite, tabela portfolio_hits
  • Conta visitas hoje + mês actual
  • Email automático a cada 100 visitas diárias

2. Secções da Página Principal

SecçãoDescrição
HeaderNome, introdução, projecto principal, hit counter
ProjectsLista com data e link
WritingArtigos publicados
SpeakingTalks e podcasts
BlogPosts com excerpt e tags
SkillsTechnical / Tools / Languages
Get in TouchFormulário de contacto (UI only)
FooterLinks sociais

3. Blog (Markdown)

  • Posts com frontmatter YAML: title, date, author, tags, excerpt
  • marked converte Markdown → HTML
  • Rota /blog/{slug} para cada post

4. Routing

RotaComportamento
/Página principal
/blog/{slug}Post individual
/test.jsonHealth check
/favicon.ico404

5. Dados

Objecto data hardcoded com toda a informação pessoal e conteúdo.

⚠️ Actualmente com placeholders ("Your Name", "Location", etc.)


Dependências

PacoteUso
react-dom/serverSSR
markedMarkdown → HTML
deno.land/x/frontmatterParse YAML frontmatter
@std/emailAlertas de visitas
@std/sqliteHit counter
stevekrouse/tailwindURLCSS framework

Limitações Conhecidas

  • Formulário de contacto sem backend (handleSubmit vazio)
  • LanguageSelector referenciado mas não definido
  • Posts de blog hardcoded no código
  • Dados pessoais com placeholders
  • Sem meta tags SEO
  • Dark mode com classes mas sem toggle funcional
FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2026 Val Town, Inc.