add binary management and core spirit
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Dmitriy Pleshevskiy 2022-07-03 16:18:43 +03:00
parent 9a72d54668
commit a45afa62b8
Signed by: pleshevskiy
GPG key ID: 1B59187B161C0215

View file

@ -26,7 +26,7 @@ function ChronologicalWorksTable(works: Work[]): AnyNode {
th("Description"), th("Description"),
th("Role"), th("Role"),
th("Stack"), th("Stack"),
th("Start"), th("Start/End"),
th("Status"), th("Status"),
]), ]),
]), ]),
@ -39,7 +39,7 @@ function ChronologicalWorksTable(works: Work[]): AnyNode {
td(work.description), td(work.description),
td(work.roles.join(", ")), td(work.roles.join(", ")),
td(work.technologies.join(", ")), td(work.technologies.join(", ")),
td(work.start), td(renderDates(work.startDate, work.endDate)),
td(work.statuses.join(", ")), td(work.statuses.join(", ")),
]); ]);
}), }),
@ -47,18 +47,30 @@ function ChronologicalWorksTable(works: Work[]): AnyNode {
]); ]);
} }
function renderDates(startDate: string, endDate?: string) {
if (endDate) {
return `${startDate}-${endDate}`;
}
return startDate;
}
interface Work { interface Work {
name: AnyNode; name: AnyNode;
description: string; description: string;
roles: Role[]; roles: Role[];
technologies: Technology[]; technologies: Technology[];
start: string; // TODO: use Date instead of string
startDate: string;
endDate?: string;
statuses: Status[]; statuses: Status[];
} }
enum Role { enum Role {
Author = "author", Author = "author",
TechLead = "tech lead", TechLead = "tech lead",
TeamLead = "team lead",
Developer = "developer",
} }
enum Technology { enum Technology {
@ -71,6 +83,7 @@ enum Technology {
NodeJS = "NodeJS", NodeJS = "NodeJS",
Flask = "Flask", Flask = "Flask",
React = "React", React = "React",
Antd = "Antd",
Postgresql = "PostgreSQL", Postgresql = "PostgreSQL",
Docker = "Docker", Docker = "Docker",
Drone = "Drone", Drone = "Drone",
@ -108,7 +121,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Library for parsing and rendering information.", description: "Library for parsing and rendering information.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.TypeScript, Technology.Deno], technologies: [Technology.TypeScript, Technology.Deno],
start: "2022", startDate: "2022",
statuses: [Status.ActiveDeveloped, Status.Experimental], statuses: [Status.ActiveDeveloped, Status.Experimental],
}, },
{ {
@ -116,7 +129,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Site with recipes which cares about privacy", description: "Site with recipes which cares about privacy",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.TypeScript, Technology.Deno, Technology.Rust], technologies: [Technology.TypeScript, Technology.Deno, Technology.Rust],
start: "2022", startDate: "2022",
statuses: [Status.ActiveDeveloped], statuses: [Status.ActiveDeveloped],
}, },
{ {
@ -129,15 +142,15 @@ const CHRONOLOGICAL_WORKS: Work[] = [
Technology.Docker, Technology.Docker,
Technology.Drone, Technology.Drone,
], ],
start: "2022", startDate: "2022",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{ {
name: RepoLink("drone_plugins/docker_stack", "/drone_plugins/docker_stack"), name: RepoLink("docker stack drone plugin", "/drone_plugins/docker_stack"),
description: "Deploy to production using `docker stack deploy`", description: "Deploy to production using `docker stack deploy`",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Docker, Technology.Drone], technologies: [Technology.Docker, Technology.Drone],
start: "2022", startDate: "2022",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{ {
@ -146,7 +159,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
"healthy workaholic timer A tool that keeps you from breaking your health by working all day.", "healthy workaholic timer A tool that keeps you from breaking your health by working all day.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Rust], technologies: [Technology.Rust],
start: "2022", startDate: "2022",
statuses: [Status.ActiveDeveloped], statuses: [Status.ActiveDeveloped],
}, },
{ {
@ -154,7 +167,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Simple SQL migration manager for your project.", description: "Simple SQL migration manager for your project.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Rust], technologies: [Technology.Rust],
start: "2021", startDate: "2021",
statuses: [Status.AsIs], statuses: [Status.AsIs],
}, },
{ {
@ -166,7 +179,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
"Asynchronous and synchronous interfaces and persistence implementations for your OOD architecture ", "Asynchronous and synchronous interfaces and persistence implementations for your OOD architecture ",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Rust], technologies: [Technology.Rust],
start: "2021", startDate: "2021",
statuses: [Status.Deprecated, Status.Experimental], statuses: [Status.Deprecated, Status.Experimental],
}, },
{ {
@ -178,7 +191,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
"Quickly start creating your new project on the espruino board or a board based on it.", "Quickly start creating your new project on the espruino board or a board based on it.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.JavaScript], technologies: [Technology.JavaScript],
start: "2021", startDate: "2021",
statuses: [Status.AsIs], statuses: [Status.AsIs],
}, },
{ {
@ -189,7 +202,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Rust client for sonic search backend.", description: "Rust client for sonic search backend.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Rust], technologies: [Technology.Rust],
start: "2020", startDate: "2020",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{ {
@ -200,7 +213,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Minimalistic REST API client for React inspired by Apollo.", description: "Minimalistic REST API client for React inspired by Apollo.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.TypeScript, Technology.React], technologies: [Technology.TypeScript, Technology.React],
start: "2020", startDate: "2020",
statuses: [Status.AsIs], statuses: [Status.AsIs],
}, },
{ {
@ -209,7 +222,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
"Easy build a configs from environment variables and use it in globally.", "Easy build a configs from environment variables and use it in globally.",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Rust], technologies: [Technology.Rust],
start: "2019", startDate: "2019",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{ {
@ -217,7 +230,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Simple full-featured finite state machine for your project", description: "Simple full-featured finite state machine for your project",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.TypeScript, Technology.NodeJS, Technology.Deno], technologies: [Technology.TypeScript, Technology.NodeJS, Technology.Deno],
start: "2019", startDate: "2019",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{ {
@ -236,9 +249,59 @@ const CHRONOLOGICAL_WORKS: Work[] = [
Technology.Docker, Technology.Docker,
Technology.Drone, Technology.Drone,
], ],
start: "2019", startDate: "2019",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{
name: RepoLink("genrss", "//github.com/icetemple/genrss"),
description: "RSS generator for python",
roles: [Role.Author],
technologies: [Technology.Python],
startDate: "2019",
statuses: [Status.PassivelyMaintained],
},
{
name: RepoLink(
"marshmallow_pageinfo",
"//github.com/icetemple/marshmallow_pageinfo",
),
description: "Page info marshmallow schema for api",
roles: [Role.Author],
technologies: [Technology.Python],
startDate: "2019",
statuses: [Status.AsIs],
},
{
name: Link("BinaryManagement", {
href: "https://www.binarymanagement.com",
}),
description: "Project management tool for interior designers",
roles: [Role.Developer, Role.TechLead, Role.TeamLead],
technologies: [
Technology.TypeScript,
Technology.NodeJS,
Technology.React,
Technology.Antd,
Technology.Docker,
Technology.Drone,
],
startDate: "2018",
statuses: [Status.ActiveDeveloped],
},
{
name: Link("CoreSpirit", { href: "https://corespirit.com" }),
description: "Social platform focusing on human and planetary enhancement",
roles: [Role.Developer],
technologies: [
Technology.TypeScript,
Technology.NodeJS,
Technology.React,
Technology.Docker,
],
startDate: "2018",
endDate: "2019",
statuses: [Status.AsIs],
},
{ {
name: Link("Master Progress", { href: "https://masterprogress.ru" }), name: Link("Master Progress", { href: "https://masterprogress.ru" }),
description: description:
@ -251,7 +314,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
Technology.Docker, Technology.Docker,
Technology.Drone, Technology.Drone,
], ],
start: "2018", startDate: "2018",
statuses: [Status.PassivelyMaintained], statuses: [Status.PassivelyMaintained],
}, },
{ {
@ -259,7 +322,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Generate projects from templates", description: "Generate projects from templates",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Python], technologies: [Technology.Python],
start: "2018", startDate: "2018",
statuses: [Status.AsIs], statuses: [Status.AsIs],
}, },
{ {
@ -267,7 +330,7 @@ const CHRONOLOGICAL_WORKS: Work[] = [
description: "Javascript encoder and decoder", description: "Javascript encoder and decoder",
roles: [Role.Author], roles: [Role.Author],
technologies: [Technology.Php], technologies: [Technology.Php],
start: "2015", startDate: "2015",
statuses: [Status.AsIs], statuses: [Status.AsIs],
}, },
]; ];