Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
astro-content
Advanced tools
~
Documentation / Live demo website
❀✿❀
𝚊𝚕𝚙𝚑𝚊
👷🏻♂️ Under heavy development, use it at your own risk! 🚧
~
Contributions are welcome
👐
Think of it as an hybrid of Wordpress + ACF, Obsidian and Ulysses, with a sprinkle of tRPC and nuxt/content.
✨ Adds a thin layer between Astro and your templates, bringing automatic typings, runtime validation and a handful of DX goodies.
🏗 Brings evolved authoring assistance, in a full-fledged back-office, inside your IDE or with CLI, as you prefer.
Being content centric, this set of tools will give you:
Warning: This is an
alpha
product — Heavy changes are on-going — Suggestions are welcome 👐
With yarn
, npm
or pnpm
, run this in your existing Astro project:
# If you want a fresh start ——v
# pnpm create astro && cd ./my-astro-site
pnpm astro add astro-content
pnpm content setup
Follow the prompts… 🐇
Shallow clone this minimal Astro starter, which comes with dummy content for you to play with:
pnpx degit JulianCataldo/astro-content/demo ./ac-demo
cd ./ac-demo && pnpm install
# Clone dummy content
pnpx degit JulianCataldo/astro-content/docs/content/@dummy ./content
# —OR— setup a minimal content base with Astro Content CLI
pnpm content setup
# Open project in VS Code
code .
Warning: Only Node 17 or higher is actually supported by Astro Content.
OK, project is ready. It's time to:
pnpm run dev
Now head over to http://localhost:3000/__content to take a deep dive in Astro Content.
It's OK to use an absolute path, so you don't have to do tedious relative imports:
import { get } from '../../content';
// Versus:
import { get } from '/content';
Astro / Vite resolve absolute paths from project root.
That's cool,
but TypeScript language server (in your IDE) will likely break, while showing
red squiggles 🤨.
A very simple fix is adding this to your tsconfig.json
> compilerOptions.paths
:
{
"compilerOptions": {
// …
"paths": {
// Make TS happy with absolute path
"/content": ["./content"]
}
}
}
Note:
pnpm
is the package manager of choice for developing this mono-repo.
macOS / Node >= 17 is the most tested environment. Please note that end-user can use anything recommended for a typical Astro project while using Astro Content distributables.
git clone git@github.com:JulianCataldo/astro-content.git
cd astro-content
pnpm -r i
# ———— Watch / build mono-repo. (turbo)
pnpm run dev
# ———— Doc. website (astro)
cd docs && pnpm run dev
Role | Notes | Name | Artefact |
---|---|---|---|
Integration (Entrypoint) | Extends Astro / Vite capabilities | astro-content | |
Server | Data handlers, API provider, helpers generator | @astro-content/server | |
Command line | Project setups and content manipulation | @astro-content/cli | |
Web app (Optional) | Full-fledge content editor / monitor | @astro-content/gui | |
TypeScript typings | Internal types for development use | @astro-content/types | |
Docs (Private) | Using and demonstrating all tools above | astro-content.netlify.app | |
Demo (Clonable) | Minimal boilerplate | ./demo |
@astro-content/*
are all internal dependencies of the main astro-content
integration package, which act as a bridge for them.
Web GUI can be opted out by user settings.
Branch | Description | Deployment URL |
---|---|---|
Feature (<feat_branch> ) | Preview experiments or future additions in isolation. | [branch]--astro-content.netlify.app/__content |
Production (master ) | Stable release. | astro-content.netlify.app/__content |
🆕 Next! (develop ) | All future features. | develop--astro-content.netlify.app/__content |
FAQs
Unknown package
We found that astro-content demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.