Skip to content

Instantly share code, notes, and snippets.

View sibelius's full-sized avatar
🦈
give me a feedback https://entria.feedback.house/sibelius

Sibelius Seraphini sibelius

🦈
give me a feedback https://entria.feedback.house/sibelius
View GitHub Profile
@sibelius
sibelius / roadmap-crud-fullstack.md
Created May 26, 2025 01:03
roadmap crud fullstack

Backend

  • create a node boilerplate
  • create a data model (sql table or nosql collection)
  • create endpoints using koa (POST, PATCH, GET, DELETE)
  • expose data model in these endpoints
  • dockerfile to create a docker image
  • deploy in a vps using docker compose, or using k8s deployment + service
  • add integration tests using supertest
  • create a basic login/auth using email + pwd bcrypt
@sibelius
sibelius / fintech-problems-roadmap.md
Last active May 24, 2025 18:25
roadmap of problems to solve in a Fintech

Here is a short list of problems to solve in "any" Fintech

  • KYC
  • Ledger
  • Scaling
  • Reliability
  • Latency
  • Security
  • Data Consistency
  • Integration with many external systems
@sibelius
sibelius / agile-questions.md
Last active May 19, 2025 19:11
agile-questions
  • do you use feature flags? expand
  • do you use git flow?
  • have you decoupled deploy from release? https://www.honeycomb.io/blog/deploys-wrong-way-change-user-experience
  • do you use sprints?
  • do you have automated tests?
  • do you do refactoring?
  • do you use types (typescript)?
  • how do you manage the project?
  • do you have daily meetings? expand
  • do you have written documentation?
@sibelius
sibelius / woovi-frontend-review-feedback.md
Last active May 19, 2025 19:11
woovi-frontend-review-feedback

These are review based on woovi frontend junior challenge

  • deploy frontend
  • select a bundling tools like nextjs, vite, webpack or rspack
  • use css in js
  • make proper components
  • avoid hard coded values like colors, spacing, typography
  • create a mini design system
  • use a form library like formik
  • use a validation library like yup
@sibelius
sibelius / FeatureFlag.tsx
Created May 6, 2020 12:33
Basic Feature Flag implementation using React.Context
import React, { useContext, useCallback } from 'react';
export const FeatureFlagContext = React.createContext<string[]>([]);
export const useFeatureFlag = () => {
const features = useContext<string[]>(FeatureFlagContext);
const hasFeature = useCallback(
(feature: string) => {
return features.includes(feature);
@sibelius
sibelius / FormUseFormik.tsx
Last active March 10, 2025 03:04
Example showing how to useFormik and FormikProvider
type Props = {
};
const FormUseFormik = (props: Props) => {
const { enqueueSnackbar } = useSnackbar();
const onSubmit = (values) => {
enqueueSnackbar(`submit: ${JSON.stringify(values)}`, {
preventDuplicate: true,
persist: false,
});
@sibelius
sibelius / file-loader.js
Created March 9, 2025 14:50
tsx with node
import { transform } from '@swc/core';
import fs from 'fs/promises';
import path from 'path';
import { fileURLToPath } from 'url';
const cwd = process.cwd();
export async function load(url, context, defaultLoad) {
if (url.endsWith('.tsx')) {
const filePath = fileURLToPath(url);
@sibelius
sibelius / download-cert-chain.ts
Created February 26, 2025 12:13
download cert chain
import fs from "fs";
import path from "path";
import forge from "node-forge";
const cwd = process.cwd();
function computeFingerprint(cert: forge.pki.Certificate): string {
const asn1Cert = forge.pki.certificateToAsn1(cert);
const der = forge.asn1.toDer(asn1Cert).getBytes();
const md = forge.md.sha1.create();
@sibelius
sibelius / mongodb-cronjob.yaml
Created January 31, 2025 15:07
Mongodb cronjob backup
apiVersion: batch/v1
kind: CronJob
metadata:
name: mongodb-backup-woovi-dev
namespace: mongodb-backup-dev
spec:
schedule: "0 1 * * *"
concurrencyPolicy: Forbid
jobTemplate:
spec:
@sibelius
sibelius / mongodb1-deployment.yaml
Created January 31, 2025 15:02
basic mongodb k8s deployment
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
name: mongodb1
name: mongodb1
namespace: woovi-mongo-dev
spec:
replicas: 1
strategy: