Neofi

Neofi is a modern, sleek template designed to streamline the creation of login and registration pages for websites built on the Astro Web Framework. Built to be server-first and and ensuring it's lightweight client-side, mobile-responsive, and fast-loading. The template provide a flexible foundation for developers to quickly implement secure, customizable authentication flows.

Neofi is currently in use on SudoVanilla projects such as Logment, Pebble Key, Ubikute Relay, and Scoutlyx.

Setup

Installation

Neofi is officially available only via the SudoVanilla Registry. So you’ll need to use the --registry parameter with your package manager.

For NPM, PNPM, Yarn, and Bun:

npm install @sudovanilla/neofi --registry https://js.registry.sudovanilla.org

For Deno, add the following to .npmrc in your Astro root directory:

registry="https://js.registry.sudovanilla.org"

Then run the deno install command.

You may noticed that all packages including astro are now being installed from the SudoVanilla Registry. This is because of the --registry parameter. No worries if the package, such as astro, is not available; the SudoVanilla Registry will act as a proxy to npmjs.org.

If you find Neofi anywhere but the SudoVanilla Registry, it is not official or controlled by SudoVanilla. Avoid unofficial sources. Also please report to SudoVanilla if an unofficial source is found.

Quick Setup

Assuming you already followed the installation instructions above, you will now able to easily integrate Neofi to your Astro website.

Create a new page for Neofi, for example let's create a registration page called register.astro, and import Neofi:

---
import { Neofi } from "@sudovanilla/neofi"
---

Neofi also comes with it's own Field component, which is optional, let's setup Neofi using the Field component:

---
import { Neofi, Field } from "@sudovanilla/neofi"
---
<Neofi
    Method="post"
    Action="#"
    Title="Register"
    TitleLink="/"
    Logo="https://via.sudovanilla.org/assets/branding/placeholders/logos/logoipsum-359.svg"
    Version="v2.3"
    VersionLink="https://releases.example.org/software/2.3"
    FooterLinks={[
        {
            Text: "Already have an account?",
            Url: "/login"
        }
    ]}
    SubmitButton="Create Account"
    OutsideFooterText={`By signing up, you agree to our <a href="#">Terms of Service</a> and <a href="#">Privacy Policy</a>.`}
>
    <Field
        Label="Username"
        Value="username"
        Type="text"
        Autocomplete="username"
        Placeholder="Zeek"
    />
    <Field
        Label="Email"
        Value="email"
        Type="email"
        Autocomplete="email"
        Placeholder="zeek2003@example.org"
    />
    <div class="neofi-grid">
        <Field
            Label="Password"
            Value="password"
            Type="password"
            Autocomplete="current-password"
        />
        <Field
            Label="Confirm Password"
            Value="password"
            Type="password"
            Autocomplete="current-password"
        />
    </div>
</Neofi>

You don't have to use the Field components at all, Neofi is built where you can use your own integrations and custom code.

Preview:

License

Copyright (C) 2025 - 2026 SudoVanilla

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see https://www.gnu.org/licenses/.

Please don't upload to GitHub

@sudovanilla/neofi - Installation

To install @sudovanilla/neofi via this registry, you'll need to install via the --registry parameter with your package manager.

n

NPM

npm install @sudovanilla/neofi --registry https://js.registry.sudovanilla.org

Learn more about the --registry parameter.

Yarn

yarn config set registry https://js.registry.sudovanilla.org
yarn install @sudovanilla/neofi

Learn more about the config option.

PNPM

pnpm install @sudovanilla/neofi --registry https://js.registry.sudovanilla.org

Learn more about the --registry parameter.

Bun Logo

Bun

bun install @sudovanilla/neofi --registry https://js.registry.sudovanilla.org

Learn more about the --registry parameter.

Learn more about setting this up in your bunfig.toml configuration.


For Deno, add the following to your .npmrc file in your directory:

registry="https://js.registry.sudovanilla.org"

Then run the deno install command.

@sudovanilla/neofi - Download

Download Tarball (v1.0.0)

Integrity sha512-0NVBcr0hFB163QsaaWdzOgEJh8k2tu3JyOh1J4GTMqlOdc/x9F4mZsB/RrGh2wlEaGLthy3v38TrVnbkx5oMMA==
SHASUM ac58fe555a222586566f130ac2de9a9a055a2cf9
Tarball https://js.registry.sudovanilla.org/@sudovanilla/neofi/-/neofi-1.0.0.tgz