rewrite in Astro

main
Araozu 2024-04-23 17:06:30 -05:00
parent 9ab25cb25d
commit 55ee8971e6
73 changed files with 15769 additions and 1530 deletions

34
.gitignore vendored
View File

@ -1,24 +1,24 @@
# Logs
logs
*.log
# build output
dist/
# generated types
.astro/
# dependencies
node_modules/
# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
# environment variables
.env
.env.production
# macOS-specific files
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# jetbrains setting folder
.idea/

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# araozu.dev
My personal portfolio and blog source code.

8
astro.config.mjs Normal file
View File

@ -0,0 +1,8 @@
import { defineConfig } from 'astro/config';
import tailwind from "@astrojs/tailwind";
// https://astro.build/config
export default defineConfig({
integrations: [tailwind()]
});

View File

@ -1,832 +0,0 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Fernando Araoz</title>
<link rel="stylesheet" href="/style.css" />
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Fira+Mono&family=Xanh+Mono:ital@0;1&display=swap"
rel="stylesheet">
</head>
<body>
<div id="scroll-container-element" class="scroll-container h-screen overflow-y-scroll" autofocus>
<div class="h-screen mx-auto relative">
<h1 class="font-xanh text-8xl text-center py-12">
Fernando
<br>
Araoz
</h1>
<p class="text-center">
fernando@araozu.dev
</p>
<p class="text-center">
<a class="underline mx-4" href="https://github.com/Araozu">
Github</a>
<a class="underline mx-4" href="https://git.araozu.dev/">
Gitea
</a>
</p>
<p class="text-center py-4">
Front-End, soon to be Back-End developer from Perú 🇵🇪
</p>
<p class="font-xanh text-center text-4xl absolute w-full bottom-10">
What I've done over the years
<br>
<br>
&darr;
</p>
</div>
<div class="bg-slate-800 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Horarios UNSA
</h2>
<p>
<span>
<a class="underline" href="https://horarios-v1.araozu.dev/" target="_blank">
https://horarios-v1.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/horarios-v1" target="_blank">
Git repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/horarios_1.png" alt="Image of Horarios UNSA">
<div class="py-4">
<img class="h-12 rounded-md" src="/icons/js.png" alt="JS logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
At my university, the schedule is a mess. We would be given images with the schedule
for all the courses, and we would have to manually search & match the courses we
wanted to take.
</p>
<p class="my-2">
So I made a website where you could see which courses overlap, their professors,
and the classrooms they were in, in a interactive table.
</p>
<p class="my-2">
I made the page completely in vanilla JS, all elements & animations were created dynamically
using DOM primitives. It was deployed on a free hosting service.
</p>
</div>
</div>
<div class="bg-red-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
PseudoSubs
</h2>
<p>
<span>
<a class="underline" href="https://pseudosubs-v1.araozu.dev/" target="_blank">
https://pseudosubs-v1.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/pseudosubs-v1" target="_blank">
Git repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/pseudo_1.png" alt="Image of Horarios UNSA">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/php.png" alt="PHP logo">
/
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="VueJS logo">
<img class="h-12 rounded-md inline-block" src="/icons/sass.png" alt="Sass logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/node.png" alt="Node logo">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
<img class="h-12 rounded-md inline-block bg-white p-1" src="/icons/express.png"
alt="Express logo">
·
<img class="h-12 rounded-md inline-block bg-white" src="/icons/mysql.png" alt="MySQL logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
Between 2017 & 2019 I became interested in fansubbing anime. I made a website
where you could download subtitles for anime.
</p>
<p class="my-2">
The website was first made in PHP, although most of the pages were static.
At the time I didn't know about databases, so I made my own file based database,
with a custom format in PHP. Unfortunately I lost the code for this version.
</p>
<p class="my-2">
I later remade the website with VueJS and Express. I also learned about databases
and used MySQL.
</p>
<p class="my-2">
I also learned about domain names, A/AAAA/CNAME records, shared hosting &
integrating with external services like analytics & disqus. The Node rewrite was
hosted on a CPanel shared hosting.
</p>
</div>
</div>
<div class="bg-lime-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Web Hostal
</h2>
<p>
<span>
<a class="underline" href="https://pseudosubs-v1.araozu.dev/" target="_blank">
https://pseudosubs-v1.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/WebHostal" target="_blank">
Git repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/web_hostal.png" alt="Image of Web Hostal">
<div class="py-4">
<img class="h-12 rounded-md inline-block bg-white" src="/icons/java.png" alt="Java logo">
<img class="h-12 rounded-md inline-block" src="/icons/tomcat.webp" alt="Tomcat logo">
<img class="h-12 rounded-md inline-block" src="/icons/git.png" alt="Git logo">
<img class="h-12 rounded-md inline-block" src="/icons/gcloud.png" alt="Google cloud logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
A simple system for a fictional hostel, made for my university's web development course.
</p>
<p class="my-2">
Here I learned more about Java, JSP, Servlets, JDBC, Git, Tomcat, and deploying
to the cloud.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-emerald-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Acechanime
</h2>
<p>
<span>
<a class="underline" href="https://github.com/Acechanime/acecha/" target="_blank">
Github repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/acecha.png" alt="Image of Horarios UNSA">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="Vue logo">
<img class="h-12 rounded-md inline-block" src="/icons/pug.png" alt="Pug logo">
<img class="h-12 rounded-md inline-block" src="/icons/coffee.png" alt="CoffeeScript logo">
<img class="h-12 rounded-md inline-block" src="/icons/sass.png" alt="Sass logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
As a result of my previous experience with fansubbing, I was invited to join a
group of fansubbers. I made a website for them, where they could upload their
subtitles.
</p>
<p class="my-2">
As it was a low risk project (made for free, for some individuals I didn't personally know),
I decided to try out new technologies that interested me at the time.
</p>
<p class="my-2">
I made only the Front-End, the Back-End was made by another person.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-cyan-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Horarios UNSA 2
</h2>
<p>
<span>
<a class="underline" href="https://horarios-v2.araozu.dev/" target="_blank">
https://horarios-v2.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/horarios-v2" target="_blank">
Git repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/horarios_2.png" alt="Image of Horarios UNSA">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="Vue logo">
<img class="h-12 rounded-md inline-block" src="/icons/pug.png" alt="Pug logo">
<img class="h-12 rounded-md inline-block" src="/icons/coffee.png" alt="CoffeeScript logo">
<img class="h-12 rounded-md inline-block" src="/icons/sass.png" alt="Sass logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
The second iteration of the Horarios UNSA website. This time I used VueJS.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-blue-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
PL - Modoki
</h2>
<p>
<span>
<a class="underline" href="https://modoki.js.org/#/" target="_blank">
https://modoki.js.org/#/</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/modoki/tree/master" target="_blank">
GitHub repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/modoki.png" alt="Image of Horarios UNSA">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/f_sharp.png" alt="F# logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/js.png" alt="JS logo">
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="Vue logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
In 2019 I discovered functional programming with F#. As I learned about more
new languages & paradigms like haskell, erlang, lisp, etc. I became interested
in making a new programming language.
</p>
<p class="my-2">
I began working on a compiler for my new language, which changed names, syntax, semantics,
target platform, etc. many times. I wrote a simple compiler, and rewrote it in multiple
languages.
</p>
<p class="my-2">
The first iteration was called Modoki, an indentation based, functional, statically typed
language that compiled to JS. I wrote a static site for its documentation.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-violet-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
KScript
</h2>
<p>
<span>
<a class="underline" href="https://jovial-jepsen-2619da.netlify.app/#/" target="_blank">
Web page at Netlify</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/KScript-web" target="_blank">
GitHub (web page)
</a>
</span>
·
<span>
<a class="underline" href="https://github.com/misti-lang/kscript" target="_blank">
GitHub (compiler)
</a>
</span>
</p>
<img class="rounded-xl" src="/img/kscript.png" alt="Image of KScript">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="Vue logo">
<img class="h-12 rounded-md inline-block" src="/icons/pug.png" alt="Pug logo">
<img class="h-12 rounded-md inline-block" src="/icons/coffee.png" alt="CoffeeScript logo">
<img class="h-12 rounded-md inline-block" src="/icons/sass.png" alt="Sass logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
The next rewrite of my compiler was called KScript. It was written in
TypeScript.
</p>
<p class="my-2">
I wrote a simple web editor for it, syntax highlighting, and a simple
transpiler & interpreter.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-pink-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Emisa
</h2>
<p>
<span>
<a class="underline" href="https://jovial-jepsen-2619da.netlify.app/#/" target="_blank">
Web page</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/emisa" target="_blank">
GitHub
</a>
</span>
</p>
<img class="rounded-xl" src="/img/emisa.png" alt="Image of Emisa">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/java.png" alt="Java logo">
<img class="h-12 rounded-md inline-block" src="/icons/mysql.png" alt="MySQL logo">
<img class="h-12 rounded-md inline-block" src="/icons/tomcat.webp" alt="Tomcat logo">
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="Vue logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
A fictional CRUD system made for a university course.
</p>
<p class="my-2">
It used JavaEE, raw MySQL, VueJS and was deployed on a Tomcat server.
</p>
</div>
</div>
<div class="bg-red-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
PseudoSubs 2
</h2>
<p>
<span>
<a class="underline" href="https://pseudosubs-v2.araozu.dev/" target="_blank">
https://pseudosubs-v2.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/pseudosubs-v2" target="_blank">
Git repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/pseudo_2.png" alt="Image of Horarios UNSA">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="VueJS logo">
<img class="h-12 rounded-md inline-block" src="/icons/pug.png" alt="Pug logo">
<img class="h-12 rounded-md inline-block" src="/icons/coffee.png" alt="CoffeeScript logo">
<img class="h-12 rounded-md inline-block" src="/icons/sass.png" alt="Sass logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/node.png" alt="Node logo">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
<img class="h-12 rounded-md inline-block bg-white p-1" src="/icons/express.png"
alt="Express logo">
·
<img class="h-12 rounded-md inline-block bg-white" src="/icons/mysql.png" alt="MySQL logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
Complete rewrite of my PseudoSubs page. It featured a Node + Express backend and a MySQL backend.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-rose-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Rimajon
</h2>
<p>
<span>
<a class="underline" href="" target="_blank">
</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/RiMaJonV" target="_blank">
GitHub (FE)
</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/RiMaJon_backend" target="_blank">
GitHub (BE)
</a>
</span>
</p>
<img class="rounded-xl" src="/img/rimajon.png" alt="Image of Rimajon">
<div class="py-4">
<img class="h-12 inline-block" src="/icons/kotlin.png" alt="Kotlin logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/vue.png" alt="Vue logo">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
<img class="h-12 rounded-md inline-block" src="/icons/sass.png" alt="Sass logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
A Mahjong-like game, but with cards instead of tiles.
</p>
<p class="my-2">
I didn't use a game engine or webgl, I made the game like a regular website.
It was made with VueJS, and the backend was made with Kotlin.
</p>
<p class="my-2">
It featured lobby creation/join, waiting rooms, 4 players per game,
server-side game logic, and a simple AI.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-pink-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Horarios UNSA 3
</h2>
<p>
<span>
<a class="underline" href="https://horarios-v3.araozu.dev/" target="_blank">
https://horarios-v3.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/horarios-v3" target="_blank">
Git repo
</a>
</span>
</p>
<img class="rounded-xl" src="/img/horarios_3.png" alt="Image of Horarios 3">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/solid.png" alt="SolidJS logo">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
Third rewrite. Now with SolidJS.
</p>
<p class="my-2">
By this time I felt confident with my VueJS skills, so I decided to try out
new frameworks. I tried React, but I didn't like it as much. I then tried
SolidJS, and I liked it a lot.
</p>
<p class="my-2">
I also used CSS-in-JS for the first time, with Aphrodite.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-yellow-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Misti-lang
</h2>
<p>
<span>
<a class="underline" href="https://comforting-youtiao-d58ed0.netlify.app/" target="_blank">
At Netlify</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/misti-web" target="_blank">
GitHub
</a>
</span>
</p>
<img class="rounded-xl" src="/img/misti.png" alt="Image of Misti">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/rust.png" alt="Rust logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/solid.png" alt="SolidJS logo">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
The next rewrite of my programming language. This time the
compiler was written in Rust*.
</p>
<p class="my-2">
The documentation was written in SolidJS.
</p>
<p class="my-2 text-xs">
*This site is not endorsed by or affiliated with The Rust Foundation.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-sky-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
Sistema de acreditacion
</h2>
<p>
<span>
<a class="underline" href="https://proyecto-gestion-calidad.netlify.app/auth/login"
target="_blank">
At netlify</a>
</span>
·
<span>
<a class="underline" href="https://github.com/Araozu/fac-psicologia-mirror" target="_blank">
GitHub
</a>
</span>
</p>
<img class="rounded-xl" src="/img/acreditacion.png" alt="Image of Sistem">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/react.png" alt="React logo">
<img class="h-12 rounded-md inline-block" src="/icons/ts.png" alt="TS logo">
<img class="h-12 rounded-md inline-block" src="/icons/tailwind.svg" alt="Tailwind logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
A capstone project for a university course. I made it with a group of 6 people.
I lead the Front-End team.
</p>
<p class="my-2">
This was my introduction to TailwindCSS, and I've been using it
ever since.
</p>
</div>
</div>
<!--
--
--
--
--
--
--
-->
<div class="bg-orange-950 h-screen grid grid-cols-2 text-white">
<div class="flex justify-center flex-col">
<div class="max-w-[90%] mx-auto">
<h2 class="font-xanh text-4xl">
THP
</h2>
<p>
<span>
<a class="underline" href="https://thp.araozu.dev/" target="_blank">
https://thp.araozu.dev/</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/thp-web" target="_blank">
Git repo (FE)
</a>
</span>
·
<span>
<a class="underline" href="https://git.araozu.dev/fernando/thp" target="_blank">
Git repo (compiler)
</a>
</span>
</p>
<img class="rounded-xl" src="/img/thp.png" alt="Image of THP">
<div class="py-4">
<img class="h-12 rounded-md inline-block" src="/icons/rust.png" alt="Rust logo">
·
<img class="h-12 rounded-md inline-block" src="/icons/tailwind.svg" alt="Tailwind logo">
</div>
</div>
</div>
<div class="flex justify-center flex-col">
<p class="my-2">
My latest rewrite of my programming language. This time the language
targets PHP instead of JS.
</p>
<p class="my-2">
The compiler is written in Rust. The Front-End is written in markdown,
and compiled to HTML with my own static site generator,
also written in Rust.
</p>
<p class="my-2 text-xs">
This site is not endorsed by or affiliated with The Rust Foundation.
</p>
</div>
</div>
</div>
</body>
</html>

View File

@ -1,17 +1,19 @@
{
"name": "araozu.dev",
"private": true,
"version": "0.0.0",
"name": "araozu-dev",
"type": "module",
"version": "0.0.1",
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview"
"dev": "astro dev",
"start": "astro dev",
"build": "astro build",
"preview": "astro preview",
"astro": "astro"
},
"devDependencies": {
"autoprefixer": "^10.4.16",
"postcss": "^8.4.31",
"tailwindcss": "^3.3.5",
"vite": "^5.0.0"
"dependencies": {
"@astrojs/check": "^0.5.10",
"@astrojs/tailwind": "^5.1.0",
"astro": "^4.6.1",
"tailwindcss": "^3.4.3",
"typescript": "^5.4.5"
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +0,0 @@
export default {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
}

9
public/favicon.svg Normal file
View File

@ -0,0 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
<style>
path { fill: #000; }
@media (prefers-color-scheme: dark) {
path { fill: #FFF; }
}
</style>
</svg>

After

Width:  |  Height:  |  Size: 749 B

18
public/global.css Normal file
View File

@ -0,0 +1,18 @@
:root {
--c-bg: #101010;
--c-on-bg: #dedede;
}
@media (prefers-color-scheme: light) {
:root {
--c-bg: #f5f5f5;
--c-on-bg: #101010;
}
}
html {
background-color: var(--c-bg);
color: var(--c-on-bg);
font-family: Inter, sans-serif;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

View File

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 54 33"><g clip-path="url(#prefix__clip0)"><path fill="#38bdf8" fill-rule="evenodd" d="M27 0c-7.2 0-11.7 3.6-13.5 10.8 2.7-3.6 5.85-4.95 9.45-4.05 2.054.513 3.522 2.004 5.147 3.653C30.744 13.09 33.808 16.2 40.5 16.2c7.2 0 11.7-3.6 13.5-10.8-2.7 3.6-5.85 4.95-9.45 4.05-2.054-.513-3.522-2.004-5.147-3.653C36.756 3.11 33.692 0 27 0zM13.5 16.2C6.3 16.2 1.8 19.8 0 27c2.7-3.6 5.85-4.95 9.45-4.05 2.054.514 3.522 2.004 5.147 3.653C17.244 29.29 20.308 32.4 27 32.4c7.2 0 11.7-3.6 13.5-10.8-2.7 3.6-5.85 4.95-9.45 4.05-2.054-.513-3.522-2.004-5.147-3.653C23.256 19.31 20.192 16.2 13.5 16.2z" clip-rule="evenodd"/></g><defs><clipPath id="prefix__clip0"><path fill="#fff" d="M0 0h54v32.4H0z"/></clipPath></defs></svg>

Before

Width:  |  Height:  |  Size: 771 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 748 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

10566
public/img/bash-logo.svg Normal file

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 782 KiB

BIN
public/img/c-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 KiB

11
public/img/c-logo.svg Normal file
View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg width="89.640671mm" height="93.591774mm" viewBox="0 0 89.64067 93.591774" version="1.1" id="svg814" inkscape:export-filename="FINALanswerbookBLUE.png" inkscape:export-xdpi="651.59998" inkscape:export-ydpi="651.59998" sodipodi:docname="C1stEdition.svg" inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview id="namedview816" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" inkscape:document-units="mm" showgrid="false" inkscape:zoom="1.2644604" inkscape:cx="107.95119" inkscape:cy="167.66045" inkscape:window-width="1366" inkscape:window-height="705" inkscape:window-x="-8" inkscape:window-y="-8" inkscape:window-maximized="1" inkscape:current-layer="layer1"/>
<defs id="defs811"/>
<g inkscape:label="Calque 1" inkscape:groupmode="layer" id="layer1" transform="translate(-115.31123,-96.087413)">
<g aria-label="C" id="text1719" style="font-weight:bold;font-size:123.472px;font-family:'Neue Haas Grotesk Text Pro';-inkscape-font-specification:'Neue Haas Grotesk Text Pro Bold';fill:#a9bacd;stroke-width:0.264583;fill-opacity:1">
<path d="m 204.33454,132.38818 c -2.34597,-22.84232 -17.53303,-36.300767 -44.69687,-36.300767 -24.81787,0 -44.32644,17.903437 -44.32644,46.672417 0,28.89245 17.77996,46.91936 47.1663,46.91936 23.45968,0 39.88146,-13.82886 42.47437,-36.79466 h -28.02815 c -1.11124,8.51957 -5.55624,15.06359 -14.94011,15.06359 -14.81664,0 -17.53302,-11.72984 -17.53302,-24.20051 0,-17.16261 6.1736,-25.92912 16.42177,-25.92912 9.13693,0 14.94012,5.30929 15.80442,14.56969 z" style="font-weight:900;font-family:'Helvetica LT Std';-inkscape-font-specification:'Helvetica LT Std Heavy';fill:#a9bacd;fill-opacity:1" id="path1771"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="256px" height="288px" viewBox="0 0 256 288" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid">
<g>
<path d="M255.569,84.452376 C255.567,79.622376 254.534,75.354376 252.445,71.691376 C250.393,68.089376 247.32,65.070376 243.198,62.683376 C209.173,43.064376 175.115,23.505376 141.101,3.86637605 C131.931,-1.42762395 123.04,-1.23462395 113.938,4.13537605 C100.395,12.122376 32.59,50.969376 12.385,62.672376 C4.064,67.489376 0.015,74.861376 0.013,84.443376 C0,123.898376 0.013,163.352376 0,202.808376 C0,207.532376 0.991,211.717376 2.988,215.325376 C5.041,219.036376 8.157,222.138376 12.374,224.579376 C32.58,236.282376 100.394,275.126376 113.934,283.115376 C123.04,288.488376 131.931,288.680376 141.104,283.384376 C175.119,263.744376 209.179,244.186376 243.209,224.567376 C247.426,222.127376 250.542,219.023376 252.595,215.315376 C254.589,211.707376 255.582,207.522376 255.582,202.797376 C255.582,202.797376 255.582,123.908376 255.569,84.452376" fill="#A179DC" fill-rule="nonzero"/>
<path d="M128.182,143.241376 L2.988,215.325376 C5.041,219.036376 8.157,222.138376 12.374,224.579376 C32.58,236.282376 100.394,275.126376 113.934,283.115376 C123.04,288.488376 131.931,288.680376 141.104,283.384376 C175.119,263.744376 209.179,244.186376 243.209,224.567376 C247.426,222.127376 250.542,219.023376 252.595,215.315376 L128.182,143.241376" fill="#280068" fill-rule="nonzero"/>
<path d="M255.569,84.452376 C255.567,79.622376 254.534,75.354376 252.445,71.691376 L128.182,143.241376 L252.595,215.315376 C254.589,211.707376 255.58,207.522376 255.582,202.797376 C255.582,202.797376 255.582,123.908376 255.569,84.452376" fill="#390091" fill-rule="nonzero"/>
<path d="M201.892326,116.294008 L201.892326,129.767692 L215.36601,129.767692 L215.36601,116.294008 L222.102852,116.294008 L222.102852,129.767692 L235.576537,129.767692 L235.576537,136.504534 L222.102852,136.504534 L222.102852,149.978218 L235.576537,149.978218 L235.576537,156.71506 L222.102852,156.71506 L222.102852,170.188744 L215.36601,170.188744 L215.36601,156.71506 L201.892326,156.71506 L201.892326,170.188744 L195.155484,170.188744 L195.155484,156.71506 L181.6818,156.71506 L181.6818,149.978218 L195.155484,149.978218 L195.155484,136.504534 L181.6818,136.504534 L181.6818,129.767692 L195.155484,129.767692 L195.155484,116.294008 L201.892326,116.294008 Z M215.36601,136.504534 L201.892326,136.504534 L201.892326,149.978218 L215.36601,149.978218 L215.36601,136.504534 Z" fill="#FFFFFF"/>
<path d="M128.456752,48.625876 C163.600523,48.625876 194.283885,67.7121741 210.718562,96.0819435 L210.558192,95.808876 L169.209615,119.617159 C161.062959,105.823554 146.128136,96.5150717 128.996383,96.3233722 L128.456752,96.3203544 C102.331178,96.3203544 81.1506705,117.499743 81.1506705,143.625316 C81.1506705,152.168931 83.4284453,160.17752 87.3896469,167.094792 C95.543745,181.330045 110.872554,190.931398 128.456752,190.931398 C146.149522,190.931398 161.565636,181.208041 169.67832,166.820563 L169.481192,167.165876 L210.767678,191.083913 C194.51328,219.21347 164.25027,238.240861 129.514977,238.620102 L128.456752,238.625876 C93.2021701,238.625876 62.4315028,219.422052 46.0382398,190.902296 C38.0352471,176.979327 33.4561922,160.837907 33.4561922,143.625316 C33.4561922,91.1592636 75.9884604,48.625876 128.456752,48.625876 Z" fill="#FFFFFF" fill-rule="nonzero"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="256" height="256" id="svg2">
<metadata id="metadata4">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<defs id="defs6"/>
<path d="M 127.999,0 C 57.423,0 0,57.423 0,128.001 0,198.585 57.423,256.005 127.999,256.005 198.577,256.005 256,198.585 256,128.001 256,57.423 198.577,0 127.999,0" id="path8" style="fill:#ffffff"/>
<path d="m 123.318,130.303 c -1.15,2.492 -2.419,5.292 -3.733,8.272 -4.645,10.524 -9.789,23.33 -11.668,31.534 -0.675,2.922 -1.093,6.543 -1.085,10.558 0,1.588 0.085,3.257 0.22,4.957 6.567,2.413 13.66,3.74 21.067,3.753 6.743,-0.013 13.221,-1.127 19.284,-3.143 -1.425,-1.303 -2.785,-2.692 -4.023,-4.257 -8.22,-10.482 -12.806,-25.844 -20.062,-51.674" id="path10" style="fill:#91dc47"/>
<path d="m 92.97,78.225 c -15.699,11.064 -25.972,29.312 -26.011,49.992 0.039,20.371 10.003,38.383 25.307,49.493 3.754,-15.637 13.164,-29.955 27.275,-58.655 -0.838,-2.302 -1.793,-4.822 -2.862,-7.469 -3.909,-9.806 -9.551,-21.194 -14.586,-26.351 -2.567,-2.694 -5.682,-5.022 -9.123,-7.01" id="path12" style="fill:#91dc47"/>
<path d="m 181.394,198.367 c -8.1,-1.015 -14.785,-2.24 -20.633,-4.303 -9.836,4.884 -20.913,7.643 -32.642,7.643 -40.584,0 -73.483,-32.894 -73.488,-73.49 0,-22.027 9.704,-41.773 25.056,-55.24 -4.106,-0.992 -8.388,-1.571 -12.762,-1.563 -21.562,0.203 -44.323,12.136 -53.799,44.363 -0.886,4.691 -0.675,8.238 -0.675,12.442 0,63.885 51.791,115.676 115.671,115.676 39.122,0 73.682,-19.439 94.611,-49.169 -11.32,2.821 -22.206,4.17 -31.528,4.199 -3.494,0 -6.774,-0.187 -9.811,-0.558" id="path14" style="fill:#63b132"/>
<path d="m 159.658,175.953 c 0.714,0.354 2.333,0.932 4.586,1.571 15.157,-11.127 25.007,-29.05 25.046,-49.307 l -0.006,0 c -0.057,-33.771 -27.386,-61.096 -61.165,-61.163 -6.714,0.013 -13.164,1.121 -19.203,3.122 12.419,14.156 18.391,34.386 24.168,56.515 0.003,0.01 0.008,0.018 0.01,0.026 0.011,0.018 1.848,6.145 5.002,14.274 3.132,8.118 7.594,18.168 12.46,25.492 3.195,4.908 6.709,8.435 9.102,9.47" id="path16" style="fill:#90b4fe"/>
<path d="m 128.122,12.541 c -38.744,0 -73.016,19.073 -94.008,48.318 10.925,-6.842 22.08,-9.31 31.815,-9.222 13.446,0.039 24.017,4.208 29.089,7.06 1.225,0.706 2.388,1.466 3.527,2.247 9.05,-3.986 19.05,-6.215 29.574,-6.215 40.589,0.005 73.493,32.899 73.499,73.488 l -0.006,0 c 0,20.464 -8.37,38.967 -21.863,52.291 3.312,0.371 6.844,0.602 10.451,0.584 12.811,0.006 26.658,-2.821 37.039,-11.552 6.769,-5.702 12.44,-14.051 15.585,-26.569 0.615,-4.835 0.969,-9.75 0.969,-14.752 0,-63.882 -51.786,-115.678 -115.671,-115.678" id="path18" style="fill:#5881d8"/>
</svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generator: Adobe Illustrator 23.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" style="enable-background:new 0 0 1000 1000;" xml:space="preserve">
<style type="text/css">
.st0{fill:#010101;}
</style>
<path class="st0" d="M537.6,123c-20.8,5.6-41,13.5-60,23.6l-55.3,31.7c-37.7,21.6-101.6,27.6-118,11.5c-14.8-14.8-14.2-21.6,2.7-31 c9.4-4.7,29-6.1,54-3.4c32.3,4,39.8,2.7,39.8-5.4c0-12.1-34.4-24.3-58.7-20.2c-54,8.3-62,10.8-68.8,18.7 c-16.2,19.6-14.2,39.1,6.1,58c44.5,41.8,122.1,41.1,211.8-2.7c74.6-36.4,110.6-46.5,159.8-45.9c43.8,0,66.8,9.4,66.8,27.6 c0,28.3-86.3,39.1-114,13.5c-14.2-12.8-15.5-13.5-31-3.4c-20.2,12.8-20.9,18.7-4.7,32.3c16.2,14.8,35.7,19.6,78.2,20.2 c72.2,1.3,125.5-24.3,125.5-61.4c0-59.3-121.4-93.1-234-64.3L537.6,123z M93.9,184.4c-49.2,25.4-56.7,50.6-23.6,78.2 c27,22.9,77.6,41.1,161.9,58c99.8,19.6,153.1,23.6,306.9,22.9c191.5-0.7,329.8-22.2,414.1-64.3c51.9-26.3,57.3-63.4,12.8-89.7 c-19.6-11.5-20.2-11.5-16.2,1.3c6.1,19.6-1.3,33.7-26.3,49.2C899.2,255,817.6,277.9,767,284c-18.2,2-39.8,5.4-49.2,7.4 c-35.7,8.8-320.3,7.4-387.8-1.3c-112.6-14.8-190.1-39.8-212.4-68.8c-12.8-15.5-12.8-18.2-3.4-33.1c12.1-18.2,7.4-18.7-20.2-4 L93.9,184.4z M59.5,332.8c2,15.5,10.1,51.3,18.2,78.9l14.8,50.6l-34.4,37.3c-74.2,81.4-74.2,186.1,0,250.2 c43.8,37.3,117.4,45.2,164.6,18.2c11.5-6.7,10.8-7.4-6.1-8.3c-36.4,0-93.1-39.1-120.3-80.9c-14.2-21.6-24.9-71.5-21.6-97.1 c3.4-22.2,27-71.5,34.4-71.5c2.7,0,11.5,14.8,19.6,32.3c8.8,18.2,38.4,66.1,67.4,106.6c46.5,65.4,82.3,132.9,82.9,155.8 c0,16.9,52.6,49.9,103.2,66.1c44.5,14.2,65.4,16.9,140.9,16.9c163.2,0,239.4-35.3,263.7-121.4c6.1-20.2,24.3-55.3,40.4-77.6 c82.9-114.7,99.1-142.3,128.1-222.6c9.4-26.3,21.6-68.8,28.3-94.4l13.5-55.3c2-4.7-8.3-1.3-22.2,8.3 c-36.4,24.3-94.4,43.1-167.3,54.6c-13.5,2-31,5.4-39.1,6.7c-64.7,12.8-331.8,18.2-425.5,7.4c-134.2-14.8-235.4-42.5-272.5-74.6 l-15.5-14.2L59.5,332.8z"/>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

25
public/img/cpp-logo.svg Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="306px" height="344.35px" viewBox="0 0 306 344.35" enable-background="new 0 0 306 344.35" xml:space="preserve">
<path fill="#00599C" d="M302.107,258.262c2.401-4.159,3.893-8.845,3.893-13.053V99.14c0-4.208-1.49-8.893-3.892-13.052L153,172.175
L302.107,258.262z"/>
<path fill="#004482" d="M166.25,341.193l126.5-73.034c3.644-2.104,6.956-5.737,9.357-9.897L153,172.175L3.893,258.263
c2.401,4.159,5.714,7.793,9.357,9.896l126.5,73.034C147.037,345.401,158.963,345.401,166.25,341.193z"/>
<path fill="#659AD2" d="M302.108,86.087c-2.402-4.16-5.715-7.793-9.358-9.897L166.25,3.156c-7.287-4.208-19.213-4.208-26.5,0
L13.25,76.19C5.962,80.397,0,90.725,0,99.14v146.069c0,4.208,1.491,8.894,3.893,13.053L153,172.175L302.108,86.087z"/>
<g>
<path fill="#FFFFFF" d="M153,274.175c-56.243,0-102-45.757-102-102s45.757-102,102-102c36.292,0,70.139,19.53,88.331,50.968
l-44.143,25.544c-9.105-15.736-26.038-25.512-44.188-25.512c-28.122,0-51,22.878-51,51c0,28.121,22.878,51,51,51
c18.152,0,35.085-9.776,44.191-25.515l44.143,25.543C223.142,254.644,189.294,274.175,153,274.175z"/>
</g>
<g>
<polygon fill="#FFFFFF" points="255,166.508 243.666,166.508 243.666,155.175 232.334,155.175 232.334,166.508 221,166.508
221,177.841 232.334,177.841 232.334,189.175 243.666,189.175 243.666,177.841 255,177.841 "/>
</g>
<g>
<polygon fill="#FFFFFF" points="297.5,166.508 286.166,166.508 286.166,155.175 274.834,155.175 274.834,166.508 263.5,166.508
263.5,177.841 274.834,177.841 274.834,189.175 286.166,189.175 286.166,177.841 297.5,177.841 "/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

19
public/img/dart-logo.svg Normal file
View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generator: Adobe Illustrator 22.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="logo_x5F_firebase_x5F_192px_x5F_clr" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="1080px" height="1080px" viewBox="0 0 1080 1080" enable-background="new 0 0 1080 1080" xml:space="preserve">
<g>
<path fill="#01579B" d="M225.6,852.14L44.84,671.38c-21.41-22.01-34.76-53.08-34.76-83.43c0-14.05,7.94-36.03,13.9-48.67 l166.86-347.62L225.6,852.14z"/>
<path fill="#40C4FF" d="M844.37,226.42L663.61,45.66c-15.79-15.85-48.67-34.76-76.48-34.76c-23.9,0-47.36,4.78-62.57,13.9 L190.84,191.66L844.37,226.42z"/>
<polygon fill="#40C4FF" points="441.13,1067.66 879.13,1067.66 879.13,879.95 552.37,775.66 253.41,879.95 "/>
<path fill="#29B6F6" d="M190.84,754.8c0,55.77,6.99,69.45,34.76,97.33l27.81,27.81h625.72L573.22,532.33L190.84,191.66V754.8z"/>
<path fill="#01579B" d="M747.03,191.66H190.84l688.29,688.29h187.71V448.9L844.37,226.42 C813.12,195.05,785.37,191.66,747.03,191.66z"/>
<path opacity="0.2" fill="#FFFFFF" d="M232.56,859.09c-27.81-27.92-34.76-55.43-34.76-104.29V198.61l-6.95-6.95V754.8 C190.84,803.66,190.84,817.21,232.56,859.09l20.86,20.86l0,0L232.56,859.09z"/>
<polygon opacity="0.2" fill="#263238" points="1059.89,441.95 1059.89,873 872.18,873 879.13,879.95 1066.85,879.95 1066.85,448.9 "/>
<path opacity="0.2" fill="#FFFFFF" d="M844.37,226.42c-34.46-34.46-62.73-34.76-104.29-34.76H190.84l6.95,6.95h542.29 C760.86,198.61,813.2,195.14,844.37,226.42L844.37,226.42z"/>
<radialGradient id="SVGID_1_" cx="538.4626" cy="539.2802" r="528.3827" gradientUnits="userSpaceOnUse">
<stop offset="0" style="stop-color:#FFFFFF;stop-opacity:0.1"/>
<stop offset="1" style="stop-color:#FFFFFF;stop-opacity:0"/>
</radialGradient>
<path opacity="0.2" fill="url(#SVGID_1_)" d="M1059.89,441.95L844.37,226.42L663.61,45.66c-15.79-15.85-48.67-34.76-76.48-34.76 c-23.9,0-47.36,4.78-62.57,13.9L190.84,191.66L23.98,539.28c-5.96,12.64-13.9,34.61-13.9,48.67c0,30.35,13.35,61.41,34.76,83.43 l166.58,165.38c3.99,4.86,8.66,9.84,14.18,15.38l6.95,6.95l20.86,20.86l180.76,180.76l6.95,6.95h431.05h6.95V879.95h187.71v-0.5 V448.9L1059.89,441.95z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="243" height="213" viewBox="0 0 243 213" id="svg2">
<metadata id="metadata34">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<defs id="defs32"/>
<g id="g8" style="fill:#a90533">
<path d="M 38.003327,153.65612 C 19.2,133.73121 8.1983366,106.20487 8.2262178,73.362099 8.2002376,44.316871 17.326257,19.351168 33.015129,0.35394059 l -0.02535,0.009505 -32.97584141,0 0,153.29584441 37.96594041,0 0.02345,-0.003 0,0 z" id="path10"/>
<path d="m 211.67271,153.66879 c 8.10012,-8.67548 15.3581,-18.89267 21.93489,-30.57742 l -36.49901,-18.24951 c -12.81837,20.83929 -31.56404,40.02091 -57.48594,40.14891 -37.72641,-0.128 -52.549066,-32.3878 -52.467323,-73.910493 l 140.977423,0 c 0.1882,-4.687841 0.1882,-6.867643 0,-9.124119 0.92008,-24.703366 -5.62693,-45.467881 -17.53663,-61.63833622 l -0.0615,0.0462574 31.74147,0 0,153.29584082 -30.67248,0 0.0691,0.009 0,0 z" id="path12"/>
<path d="M 89.437149,35.493743 C 90.997861,16.694218 105.81988,4.0513663 123.19873,4.0133465 c 17.49735,0.03802 30.13957,12.6808715 30.56792,31.4803965 l -64.329501,0 0,0 z" id="path14"/>
</g>
<g id="g16">
<path d="m 20.08903,179.6084 0,-6.386693 -19.61821812,0 0,37.867723 19.61821812,0 0,-6.387961 -12.3184161,0 0,-10.036594 11.8615441,0 0,-6.387326 -11.8615441,0 0,-8.669149 12.3184161,0 0,0 z" id="path18"/>
<path d="m 53.394376,195.120475 c 4.890614,-0.72617 7.576079,-5.57243 7.75604,-10.49346 -0.179961,-8.05069 -5.398812,-11.38186 -12.774654,-11.40594 l -10.037227,0 0,37.8677227 7.299802,0 0,-15.055842 9.124752,15.055842 9.124753,0 -10.493466,-15.968317 0,0 z m -7.756673,-15.9676829 0.912475,0 c 3.982574,0.1495445 6.971565,1.0582178 6.843565,5.9310889 0.128,4.464792 -2.759604,5.676357 -6.843565,5.474852 l -0.912475,0 0,-11.4059409 0,0 z" id="path20"/>
<path d="m 86.699089,173.2217 -7.299168,0 0,37.867723 17.792633,0 0,-6.387961 -10.493465,0 0,-31.479762 0,0 z" id="path22"/>
<path d="m 134.60404,203.332753 3.19366,7.756039 7.75604,0 -14.14336,-38.78019794 -5.93109,0 -15.05584,38.78019794 7.7554,0 3.1943,-7.756039 13.23089,0 0,0 z m -1.82495,-5.930456 -9.12475,0 4.10614,-14.143366 5.01861,14.143366 0,0 z" id="path24"/>
<path d="m 159.2415,211.08943 7.75541,0 0,-25.549307 20.07509,26.461148 5.47422,0 0,-38.779564 -7.75541,0 0,25.549307 -20.07509,-26.46241594 -5.47422,0 0,38.78083194 0,0 z" id="path26"/>
<path d="m 224.48348,191.01434 0,5.931089 8.21228,0 c -0.17109,4.766416 -4.07192,8.804752 -8.66851,8.668515 -7.25925,0.136237 -10.85656,-6.87905 -10.94971,-13.230892 0.0932,-6.26693 3.63977,-13.5857421 10.94971,-13.6871282 3.8362,0.1007525 7.07928,2.7253861 8.66851,5.9310892 l 6.38733,-3.1936635 c -2.80903,-5.91715 -8.48349,-9.19826 -15.05584,-9.12476 -11.3128,-0.0729 -18.55747,9.2648 -18.70575,20.07446 0.14828,10.540357 7.19082,19.928713 18.24951,20.074456 11.94329,-0.145743 17.46566,-9.685545 17.33703,-20.530693 l 0,-0.912475 -16.42456,0 0,0 0,0 z" id="path28"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg width="236" height="224" viewBox="0 0 62.441665 59.266668" version="1.1" id="svg5" inkscape:version="1.1 (c68e22c387, 2021-05-23)" sodipodi:docname="F Sharp logo.svg" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview id="namedview7" pagecolor="#ffffff" bordercolor="#999999" borderopacity="1" inkscape:pageshadow="0" inkscape:pageopacity="0" inkscape:pagecheckerboard="0" inkscape:document-units="px" showgrid="false" units="px" width="236px" inkscape:zoom="2" inkscape:cx="142.75" inkscape:cy="75.75" inkscape:window-width="1920" inkscape:window-height="1057" inkscape:window-x="-8" inkscape:window-y="-8" inkscape:window-maximized="1" inkscape:current-layer="layer1"/>
<defs id="defs2"/>
<g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1">
<path style="fill:#378bba;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 29.633333,59.266667 0,29.633333 29.633333,0 V 14.816667 L 14.816667,29.633333 29.633333,44.45 Z" id="path4912" sodipodi:nodetypes="ccccccc"/>
<path style="fill:#378bba;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 29.633333,40.216667 19.05,29.633333 29.633333,19.05 Z" id="path9393" sodipodi:nodetypes="cccc"/>
<path style="fill:#30b9db;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 31.75,0 V 14.816667 L 46.566667,29.633333 31.75,44.45 V 59.266667 L 62.441667,29.633333 Z" id="path13640" sodipodi:nodetypes="ccccccc"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2000 1915"><path fill="#ffaff3" d="M905.5 95.13c41.483-73.507 147.51-73.507 189 0l217.42 385.27c26.9 47.672 73.23 81.278 126.9 92.095l434.05 87.471c82.87 16.699 115.52 117.34 58.4 179.4l-299.67 325.58a188.15 188.15 0 0 0-48.49 149.06l50.83 439.33c9.69 83.71-75.98 146.04-152.89 110.88l-402.64-184.05a188.55 188.55 0 0 0-156.82 0l-402.63 184.05c-76.916 35.15-162.58-27.17-152.9-110.88l50.837-439.33c6.292-54.37-11.413-108.78-48.488-149.06l-299.68-325.58c-57.118-62.055-24.463-162.7 58.403-179.4l434.05-87.471c53.674-10.817 100-44.423 126.9-92.095z"/><g fill="#151515"><path d="M1000 1.287c-50.71 0-101.42 24.727-129.33 74.184l-217.42 385.27c-21.197 37.562-57.654 64.015-99.969 72.543l-434.05 87.47c-111.38 22.446-156.79 162.2-79.932 245.7l299.68 325.58a148.08 148.08 0 0 1 38.183 117.37l-50.836 439.33c-13.042 112.71 105.87 199.11 209.26 151.86l.002-.002 402.64-184.05.002-.002a148.48 148.48 0 0 1 123.55 0l.002.002 402.64 184.05c103.38 47.263 222.3-39.144 209.25-151.86l.002.002-50.83-439.33v-.002a148.07 148.07 0 0 1 38.181-117.37l.002-.004 299.67-325.59v-.002c76.858-83.5 31.455-223.25-79.93-245.7l-434.05-87.47c-42.311-8.527-78.773-34.981-99.967-72.54l-217.42-385.28c-27.914-49.455-78.626-74.182-129.34-74.182m.002 77.426c23.044 0 46.09 12.026 59.666 36.078l217.42 385.27c32.606 57.784 88.805 98.544 153.83 111.65l434.05 87.47c54.356 10.954 74.253 72.488 36.872 113.1l-299.67 325.59c-44.938 48.81-66.415 114.84-58.793 180.74l50.83 439.33v.001c6.333 54.706-46.086 92.96-96.523 69.903h-.002l-402.64-184.05c-60.336-27.588-129.75-27.588-190.09.002l-402.63 184.05c-50.446 23.052-102.86-15.196-96.535-69.902l50.838-439.33c7.627-65.91-13.86-131.93-58.793-180.75l-299.68-325.58c-37.378-40.609-17.476-102.14 36.874-113.1l434.05-87.473c65.032-13.106 121.23-53.865 153.84-111.65v-.002l217.42-385.27c13.573-24.05 36.616-36.076 59.66-36.076"/><circle cx="678.57" cy="1007.1" r="78.571"/><circle cx="1321.4" cy="1007.1" r="78.571"/><path d="M929.244 1112.08a40 40 0 0 0-31.543 46.96 104.3 104.3 0 0 0 15.485 37.634l.001.002.002.004a104.2 104.2 0 0 0 28.715 28.834l.008.006a104.3 104.3 0 0 0 37.533 15.652l.014.004.016.002a104.4 104.4 0 0 0 40.666.082h.004a104.3 104.3 0 0 0 37.625-15.477l.005-.004.008-.004a104.3 104.3 0 0 0 28.819-28.699 104.1 104.1 0 0 0 15.664-37.588 40 40 0 0 0-31.35-47.086 40 40 0 0 0-47.086 31.352 24.1 24.1 0 0 1-3.627 8.7l-.012.015-.01.017a24.2 24.2 0 0 1-6.7 6.676 24.2 24.2 0 0 1-8.75 3.596l-.01.002-.01.002c-3.13.615-6.348.61-9.475-.016a24.3 24.3 0 0 1-8.734-3.646l-.014-.01-.011-.008a24.2 24.2 0 0 1-6.666-6.693l-.002-.004-.002-.002a24.3 24.3 0 0 1-3.604-8.76 40 40 0 0 0-46.959-31.543"/></g></svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
public/img/go-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 12">
<path fill="#453a62" d="M 0 12 L 4 6 L 0 0 L 3 0 L 7 6 L 3 12"/>
<path fill="#5e5086" d="M 4 12 L 8 6 L 4 0 L 7 0 L 15 12 L 12 12 L 9.5 8.25 L 7 12"/>
<path fill="#8f4e8b" d="M 13.66 8.5 L 12.333 6.5 L 17 6.5 L 17 8.5 M 11.666 5.5 L 10.333 3.5 L 17 3.5 L 17 5.5"/>
</svg>

After

Width:  |  Height:  |  Size: 377 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 659 KiB

BIN
public/img/java-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

16
public/img/lua-logo.svg Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generator: Adobe Illustrator 14.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 43363) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Ebene_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="947px" height="947px" viewBox="0 0 947 947" enable-background="new 0 0 947 947" xml:space="preserve">
<g>
<path fill="#000080" d="M835.5,473.6c0-199.8-162.2-362-362-362s-362,162.2-362,362c0,199.8,162.2,362,362,362 S835.5,673.4,835.5,473.6"/>
<path fill="#FFFFFF" d="M729.5,323.6c0-58.5-47.5-106-106-106s-106,47.5-106,106c0,58.5,47.5,106,106,106S729.5,382.1,729.5,323.6"/>
<path fill="#000080" d="M941.5,111.5c0-58.5-47.5-106-106-106s-106,47.5-106,106c0,58.5,47.5,106,106,106S941.5,170.1,941.5,111.5"/>
<g>
<path fill="#FFFFFF" d="M258.1,627.8h117.3v26.7H227.8V417h30.3V627.8z"/>
<path fill="#FFFFFF" d="M515.5,654.5v-23.8c-16,22.5-31.9,31.3-57,31.3c-33.2,0-54.4-18.2-54.4-46.6V483.8h27v120.9 c0,20.5,13.7,33.6,35.2,33.6c28.3,0,46.6-22.8,46.6-57.7v-96.8h27v170.7H515.5z"/>
<path fill="#FFFFFF" d="M738.4,659.1c-8.8,2.3-13,2.9-18.6,2.9c-17.6,0-26.1-7.8-28-25.1c-19.2,17.6-36.5,25.1-58,25.1 c-34.5,0-56-19.5-56-50.5c0-22.2,10.1-37.5,30-45.6c10.4-4.2,16.3-5.5,54.7-10.4c21.5-2.6,28.3-7.5,28.3-18.9v-7.2 c0-16.3-13.7-25.4-38.1-25.4c-25.4,0-37.8,9.4-40.1,30.3h-27.4c0.7-16.9,3.9-26.7,11.7-35.5c11.4-12.7,31.9-19.9,56.7-19.9 c42,0,64.2,16.3,64.2,46.6v100.4c0,8.5,5.2,13.4,14.7,13.4c1.6,0,2.9,0,5.9-0.7V659.1z M690.8,570.1c-9.1,4.2-15,5.5-43.7,9.4 c-29,4.2-41.1,13.4-41.1,31.3c0,17.3,12.4,27.4,33.6,27.4c16,0,29.3-5.2,40.4-15.3c8.1-7.5,10.8-13,10.8-22.2V570.1z"/>
</g>
<path fill="none" stroke="#808080" stroke-width="10.8612" stroke-miterlimit="10" stroke-dasharray="40.8475" d="M890.6,261 c33.5,65.8,51,138.6,51,212.5c0,258.4-209.7,468.1-468.1,468.1S5.4,731.9,5.4,473.5C5.4,215.1,215.1,5.4,473.5,5.4 c83.1,0,164.6,22.1,236.2,63.9"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

116
public/img/ocaml-logo.svg Normal file
View File

@ -0,0 +1,116 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 20.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="100px" height="100px" viewBox="0 0 150 150" style="enable-background:new 0 0 141.7 141.7;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FFFFFF;}
.st1{fill:#494545;}
.st2{fill:url(#SVGID_1_);}
.st3{fill:url(#SVGID_2_);}
.st4{fill:url(#SVGID_3_);}
.st5{fill:url(#SVGID_4_);}
.st6{font-family:'MyriadPro-Regular';}
.st7{font-size:12px;}
</style>
<g>
<path class="st0" d="M73.9,89.8c-0.2-1.2,0.2-2.4-0.2-3.6c-0.3-1-1-1.1-1.5-1.9c-1.3-2.1-2.5-4.9-2.7-7.5c-0.1-2.3-1-4.5-1.1-6.8
c-0.1-1.1,0.1-2.3,0-3.4c0-0.5-0.1-1-0.2-1.6c0-0.1-0.1-0.7-0.2-1l0.3-0.7c-0.1-0.2,2.5-0.2,3.3-0.2c1.3,0,2.6,0.1,3.9,0.1
c2.7,0.1,5.2,0.1,7.8-0.3c5.9-0.9,8.6-3.3,9.9-4.3c5.4-3.9,7.8-10.2,7.8-10.2c0.9-2,0.9-5.5,2.8-7.1c2.2-1.9,6-1.7,8.6-2.9
c1.5-0.7,2.6-1,4.1-0.7c1.1,0.2,3.2,1.6,3.7-0.3c-0.4-0.2-0.5-0.7-0.7-0.9c2.1-0.2,0-5.1-0.8-6.1c-1.3-1.5-3.5-2.2-5.8-2.8
c-2.7-0.7-5.2-1.6-7.8-1.1c-4.5,0.9-4.2-1.7-6.8-1.7c-3.2,0-8.8,0.2-9.8,3.2c-0.5,1.4-0.9,1.5-1.7,2.6c-0.7,0.9,0.1,1.8-0.2,2.9
c-0.4,1.1-0.9,5-1.4,6.4c-0.9,2.3-2,5.2-4,5.2c-2.8,0.3-5,0.4-7.3-0.4c-1.4-0.5-3.7-1.3-4.8-1.7c-5.2-2.2-6.1-4.6-6.1-4.6
c-0.6-0.9-2-2.4-2.6-4.4c-0.6-2.1-1.6-3.9-2-5.1c-0.4-1.2-1.5-3-2.3-5c-1-2.6-2.5-4.5-3.6-5.4c-1.6-1.4-3.1-3.7-6.4-3
c-0.6,0.1-2.7,0.2-4.4,1.6c-1.1,0.9-1.5,2.9-2.5,4.5c-0.6,0.9-1.6,3.6-2.6,5.9c-0.7,1.6-1,2.7-1.7,3.3c-0.6,0.4-1.3,1-2.1,0.7
c-0.5-0.2-1.1-0.5-1.6-1c-0.8-0.6-2.5-3.6-3.6-5.7c-0.9-1.9-2.9-4.7-4-6.3c-1.6-2.2-2.6-2.8-5-2.8c-5.2,0-5.6,2.9-7.9,7.2
c-1,1.9-1.4,4.8-3.4,7.1c-1.2,1.3-4.8,6.8-7.4,7.7v0l0,0v38.8l0,0.1v-0.2c0.2-0.5,0.3-1,0.5-1.4c1-2.1,3.3-4.1,4.6-6.2
c0.7-1.2,1.5-2.3,1.9-3.6c0.4-1.1,0.6-2.7,1.2-3.6c0.7-1.1,1.8-1.5,2.9-1.7c1.8-0.3,3.3,2.5,5.5,3.6c1,0.4,5.4,2,6.7,2.3
c2.2,0.5,4.6,1,6.8,1.4c1.2,0.2,2.3,0.4,3.6,0.5c1.1,0.1,5.2,0.2,5.5,0.5c-2.1,1.1-3.3,4.1-4.1,6.2c-0.8,2.2-1.4,4.7-2.4,6.8
c-1.1,2.4-3.4,3.4-3.1,6.2c0.1,1.1,0.3,2.3,0.1,3.5c-0.2,1.3-0.7,2.3-1.1,3.5c-0.5,1.6-1.1,6.9-1.8,8.5l4.6-0.6l0,0
c0.5-1.2,1-6.2,1.1-6.7c0.9-2.5,2-4.6,3.7-6.5c1.7-1.9,1.6-4.3,2.6-6.6c1.1-2.4,2.5-4.3,3.9-6.6c2.5-4.1,4.1-9.2,9.4-10.3
c0.6-0.1,3.8,2.2,5.2,3.6c1.6,1.6,3.4,3.4,4.5,5.6c2.1,4.2,3.8,10.3,4.5,13.6c0.4,1.9,0.7,2,2,3.6c0.6,0.7,1.8,2.9,2.2,3.7
c0.4,0.9,1,2.9,1.5,4c0.3,0.6,1.1,2.5,1.6,4.2l4.3-0.1c0,0,0.1,0,0.1,0c0,0,0,0,0,0c0,0,0-0.1,0-0.1C75.9,99.5,74.6,94.6,73.9,89.8
z"/>
<path class="st1" d="M71.1,64.9L71.1,64.9C71.1,64.7,71.1,64.7,71.1,64.9z"/>
<g>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-686.854" y1="80.5562" x2="-686.854" y2="80.3999" gradientTransform="matrix(1 0 0 -1 758 145.28)">
<stop offset="0" style="stop-color:#F29104"/>
<stop offset="1" style="stop-color:#EC6813"/>
</linearGradient>
<path class="st2" d="M71.1,64.9L71.1,64.9C71.1,64.7,71.1,64.7,71.1,64.9z"/>
<g>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-705.428" y1="79.4728" x2="-705.428" y2="40.6105" gradientTransform="matrix(1 0 0 -1 758 145.28)">
<stop offset="0" style="stop-color:#F29104"/>
<stop offset="1" style="stop-color:#EC6813"/>
</linearGradient>
<path class="st3" d="M72.1,99.9c-0.5-1-1.1-3.1-1.5-4c-0.4-0.8-1.6-3-2.2-3.7c-1.3-1.5-1.6-1.6-2-3.6c-0.7-3.4-2.4-9.4-4.5-13.6
c-1.1-2.2-2.9-4-4.5-5.6c-1.4-1.4-4.6-3.7-5.2-3.6c-5.3,1-6.9,6.2-9.4,10.3c-1.4,2.3-2.8,4.2-3.9,6.6c-1,2.2-0.9,4.7-2.6,6.6
c-1.7,1.9-2.9,4-3.7,6.5c-0.2,0.5-0.6,5.5-1.1,6.7c0,0,0,0,0,0l7.8-0.5c7.3,0.5,5.2,3.3,16.5,2.7l17.9-0.6l0,0
C73.2,102.4,72.4,100.5,72.1,99.9z"/>
</g>
<g>
<g>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-686.9772" y1="164.3948" x2="-686.9771" y2="40.6383" gradientTransform="matrix(1 0 0 -1 758 145.28)">
<stop offset="0" style="stop-color:#F29104"/>
<stop offset="1" style="stop-color:#EC6813"/>
</linearGradient>
<path class="st4" d="M124.1-19.1H17.9C8-19.1,0-11.1,0-1.2v39v0c2.6-0.9,6.2-6.4,7.4-7.7c2-2.3,2.4-5.3,3.4-7.1
c2.3-4.2,2.7-7.2,7.9-7.2c2.4,0,3.4,0.6,5,2.8c1.1,1.5,3.1,4.4,4,6.3c1.1,2.2,2.8,5.1,3.6,5.7c0.6,0.4,1.1,0.8,1.6,1
c0.8,0.3,1.5-0.3,2.1-0.7c0.7-0.6,1-1.7,1.7-3.3c1-2.3,2-4.9,2.6-5.9c1-1.6,1.4-3.6,2.5-4.5c1.6-1.4,3.8-1.5,4.4-1.6
c3.3-0.7,4.8,1.6,6.4,3c1.1,1,2.5,2.9,3.6,5.4c0.8,2,1.8,3.9,2.3,5c0.4,1.1,1.4,2.9,2,5.1c0.6,1.9,2,3.4,2.6,4.4
c0,0,0.9,2.4,6.1,4.6c1.1,0.5,3.4,1.3,4.8,1.7c2.3,0.8,4.5,0.7,7.3,0.4c2,0,3.1-2.9,4-5.2c0.5-1.4,1.1-5.3,1.4-6.4
c0.3-1.1-0.5-1.9,0.2-2.9c0.8-1.1,1.3-1.2,1.7-2.6c1-3.1,6.6-3.2,9.8-3.2c2.7,0,2.3,2.6,6.8,1.7c2.6-0.5,5.1,0.3,7.8,1.1
c2.3,0.6,4.5,1.3,5.8,2.8c0.8,1,2.9,5.9,0.8,6.1c0.2,0.2,0.4,0.7,0.7,0.9c-0.5,1.9-2.5,0.5-3.7,0.3c-1.5-0.3-2.6,0-4.1,0.7
c-2.6,1.1-6.3,1-8.6,2.9c-1.9,1.6-1.9,5.1-2.8,7.1c0,0-2.5,6.3-7.8,10.2c-1.4,1-4.1,3.4-9.9,4.3c-2.6,0.4-5.1,0.4-7.8,0.3
c-1.3-0.1-2.6-0.1-3.9-0.1c-0.8,0-3.4-0.1-3.3,0.2l-0.3,0.7c0,0.2,0.1,0.8,0.2,1c0.1,0.6,0.1,1.1,0.2,1.6c0,1.1-0.1,2.3,0,3.4
c0.1,2.3,1,4.4,1.1,6.8c0.1,2.6,1.4,5.4,2.7,7.5c0.5,0.8,1.2,0.9,1.5,1.9c0.4,1.1,0,2.4,0.2,3.6c0.7,4.7,2.1,9.7,4.2,14
c0,0,0,0.1,0,0.1c0,0,0,0,0,0c2.6-0.4,5.3-1.4,8.7-1.9c6.3-0.9,15-0.5,20.6-1c14.2-1.3,21.9,5.8,34.6,2.9V-1.2
C142-11.1,134-19.1,124.1-19.1z M71.1,64.9C71.1,64.7,71.1,64.7,71.1,64.9L71.1,64.9z"/>
</g>
</g>
<g>
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-738.3776" y1="85.364" x2="-738.3776" y2="41.4928" gradientTransform="matrix(1 0 0 -1 758 145.28)">
<stop offset="0" style="stop-color:#F29104"/>
<stop offset="1" style="stop-color:#EC6813"/>
</linearGradient>
<path class="st5" d="M32.8,81.3c1-2.2,1.6-4.6,2.4-6.8c0.8-2.1,2-5.1,4.1-6.2c-0.3-0.3-4.4-0.4-5.5-0.5
c-1.2-0.1-2.4-0.3-3.6-0.5c-2.2-0.4-4.7-0.9-6.8-1.4c-1.3-0.3-5.8-1.9-6.7-2.3c-2.3-1-3.8-3.9-5.5-3.6c-1.1,0.2-2.2,0.6-2.9,1.7
c-0.6,0.9-0.8,2.5-1.2,3.6c-0.5,1.2-1.3,2.4-1.9,3.6C3.8,71,1.5,72.9,0.5,75C0.3,75.5,0.2,76,0,76.5v0.2v7.9v14v2
c1.2,0.2,2.4,0.4,3.7,0.8c10,2.7,12.4,2.9,22.2,1.8l0.9-0.1v0c0.7-1.6,1.3-6.9,1.8-8.5c0.4-1.3,0.9-2.3,1.1-3.5
c0.2-1.2,0-2.4-0.1-3.5C29.4,84.7,31.7,83.7,32.8,81.3z"/>
</g>
</g>
</g>
</g>
<text transform="matrix(1 0 0 1 8.0118 124.3814)" class="st6 st7"> </text>
<path class="st1" d="M36.1,128.9c-1.4,0-2.7-0.2-3.8-0.7c-1.2-0.5-2.1-1.2-3-2.1c-0.8-0.9-1.5-2.1-1.9-3.4c-0.5-1.3-0.7-2.9-0.7-4.5
c0-1.7,0.2-3.2,0.7-4.5c0.5-1.3,1.1-2.4,1.9-3.3c0.8-0.9,1.8-1.6,3-2.1c1.2-0.5,2.4-0.7,3.8-0.7c1.4,0,2.7,0.2,3.8,0.7
c1.2,0.5,2.1,1.2,3,2.1c0.8,0.9,1.5,2,1.9,3.4c0.5,1.3,0.7,2.8,0.7,4.5c0,1.7-0.2,3.2-0.7,4.5c-0.5,1.3-1.1,2.5-1.9,3.4
c-0.8,0.9-1.8,1.6-3,2.1C38.8,128.7,37.5,128.9,36.1,128.9z M36.1,124.9c1.4,0,2.5-0.6,3.4-1.8c0.8-1.2,1.2-2.9,1.2-5
c0-2.1-0.4-3.7-1.2-4.9c-0.8-1.2-2-1.7-3.4-1.7c-1.4,0-2.5,0.6-3.4,1.7c-0.8,1.2-1.2,2.8-1.2,4.9c0,2.1,0.4,3.8,1.2,5
C33.6,124.3,34.7,124.9,36.1,124.9z"/>
<path class="st1" d="M47.2,118.3c0-1.7,0.3-3.2,0.8-4.6c0.5-1.3,1.2-2.5,2.1-3.4c0.9-0.9,2-1.6,3.1-2.1c1.2-0.5,2.5-0.7,3.8-0.7
c1.3,0,2.5,0.3,3.5,0.8c1,0.5,1.9,1.2,2.6,1.9l-2.6,2.9c-0.5-0.5-1.1-0.9-1.6-1.1c-0.5-0.3-1.2-0.4-1.9-0.4c-0.7,0-1.4,0.2-2,0.5
c-0.6,0.3-1.2,0.7-1.6,1.3c-0.5,0.6-0.8,1.3-1.1,2.1c-0.3,0.8-0.4,1.8-0.4,2.8c0,2.1,0.5,3.8,1.4,5c0.9,1.2,2.1,1.8,3.7,1.8
c0.8,0,1.6-0.2,2.2-0.5c0.6-0.3,1.2-0.8,1.7-1.3l2.6,2.8c-0.9,1-1.9,1.8-3,2.3c-1.1,0.5-2.3,0.8-3.6,0.8c-1.3,0-2.6-0.2-3.8-0.7
c-1.2-0.5-2.2-1.1-3.1-2s-1.6-2-2.1-3.3C47.4,121.6,47.2,120,47.2,118.3z"/>
<path class="st1" d="M65.1,124.2c0-1.7,0.7-2.9,2.1-3.9c1.4-0.9,3.7-1.6,6.8-1.9c0-0.7-0.3-1.3-0.6-1.7c-0.4-0.4-1-0.6-1.8-0.6
c-0.7,0-1.4,0.1-2,0.4c-0.7,0.3-1.4,0.6-2.2,1l-1.7-3.1c1-0.6,2.1-1.1,3.2-1.5c1.1-0.4,2.3-0.6,3.5-0.6c2,0,3.6,0.6,4.7,1.7
c1.1,1.2,1.6,3,1.6,5.4v9h-3.8l-0.4-1.6h-0.1c-0.7,0.6-1.4,1.1-2.1,1.4c-0.8,0.4-1.6,0.6-2.5,0.6c-0.7,0-1.4-0.1-1.9-0.4
c-0.6-0.2-1.1-0.6-1.5-1c-0.4-0.4-0.7-0.9-0.9-1.5C65.2,125.5,65.1,124.8,65.1,124.2z M69.5,123.8c0,0.5,0.2,0.9,0.5,1.1
c0.3,0.2,0.8,0.4,1.3,0.4c0.6,0,1-0.1,1.4-0.3c0.4-0.2,0.8-0.6,1.2-1v-2.8c-1.7,0.2-2.8,0.6-3.5,1C69.9,122.7,69.5,123.2,69.5,123.8
z"/>
<path class="st1" d="M81.4,113.1h3.8l0.3,2h0.1c0.7-0.7,1.4-1.2,2.1-1.7c0.7-0.5,1.6-0.7,2.7-0.7c1.1,0,2,0.2,2.7,0.7
c0.7,0.5,1.2,1.1,1.6,2c0.7-0.7,1.4-1.3,2.2-1.9c0.8-0.5,1.7-0.8,2.8-0.8c1.7,0,2.9,0.6,3.7,1.7c0.8,1.1,1.2,2.7,1.2,4.7v9.8H100
v-9.2c0-1.1-0.2-1.9-0.5-2.4c-0.3-0.4-0.8-0.6-1.5-0.6c-0.8,0-1.7,0.5-2.7,1.5v10.7h-4.7v-9.2c0-1.1-0.2-1.9-0.5-2.4
c-0.3-0.4-0.8-0.6-1.5-0.6c-0.8,0-1.7,0.5-2.7,1.5v10.7h-4.7V113.1L81.4,113.1z"/>
<g>
<path class="st1" d="M107.4,106.2h4.7v17.6c0,0.5,0.1,0.8,0.3,1c0.2,0.2,0.4,0.3,0.6,0.3c0.1,0,0.2,0,0.3,0c0.1,0,0.2,0,0.3-0.1
l0.6,3.5c-0.3,0.1-0.6,0.2-1,0.3c-0.4,0.1-0.9,0.1-1.4,0.1c-0.8,0-1.5-0.1-2-0.4c-0.6-0.3-1-0.6-1.3-1.1c-0.3-0.5-0.6-1-0.7-1.7
c-0.1-0.6-0.2-1.4-0.2-2.2L107.4,106.2L107.4,106.2z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.9 KiB

96
public/img/php-logo.svg Normal file
View File

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg height="383.5975" id="svg3430" version="1.1" viewBox="0 0 711.20123 383.5975" width="711.20123" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg">
<title id="title3510">Official PHP Logo</title>
<metadata id="metadata3436">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title>Official PHP Logo</dc:title>
<dc:creator>
<cc:Agent>
<dc:title>Colin Viebrock</dc:title>
</cc:Agent>
</dc:creator>
<dc:description/>
<dc:contributor>
<cc:Agent>
<dc:title/>
</cc:Agent>
</dc:contributor>
<cc:license rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/"/>
<dc:rights>
<cc:Agent>
<dc:title>Copyright Colin Viebrock 1997 - All rights reserved.</dc:title>
</cc:Agent>
</dc:rights>
<dc:date>1997</dc:date>
</cc:Work>
<cc:License rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
<cc:permits rdf:resource="http://creativecommons.org/ns#Reproduction"/>
<cc:permits rdf:resource="http://creativecommons.org/ns#Distribution"/>
<cc:requires rdf:resource="http://creativecommons.org/ns#Notice"/>
<cc:requires rdf:resource="http://creativecommons.org/ns#Attribution"/>
<cc:permits rdf:resource="http://creativecommons.org/ns#DerivativeWorks"/>
<cc:requires rdf:resource="http://creativecommons.org/ns#ShareAlike"/>
</cc:License>
</rdf:RDF>
</metadata>
<defs id="defs3434">
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath3444">
<path d="M 11.52,162 C 11.52,81.677 135.307,16.561 288,16.561 l 0,0 c 152.693,0 276.481,65.116 276.481,145.439 l 0,0 c 0,80.322 -123.788,145.439 -276.481,145.439 l 0,0 C 135.307,307.439 11.52,242.322 11.52,162" id="path3446"/>
</clipPath>
<radialGradient cx="0" cy="0" fx="0" fy="0" gradientTransform="matrix(363.05789,0,0,-363.05789,177.52002,256.30713)" gradientUnits="userSpaceOnUse" id="radialGradient3452" r="1" spreadMethod="pad">
<stop id="stop3454" offset="0" style="stop-opacity:1;stop-color:#aeb2d5"/>
<stop id="stop3456" offset="0.3" style="stop-opacity:1;stop-color:#aeb2d5"/>
<stop id="stop3458" offset="0.75" style="stop-opacity:1;stop-color:#484c89"/>
<stop id="stop3460" offset="1" style="stop-opacity:1;stop-color:#484c89"/>
</radialGradient>
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath3468">
<path d="M 0,324 576,324 576,0 0,0 0,324 Z" id="path3470"/>
</clipPath>
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath3480">
<path d="M 0,324 576,324 576,0 0,0 0,324 Z" id="path3482"/>
</clipPath>
</defs>
<g id="g3438" transform="matrix(1.25,0,0,-1.25,-4.4,394.29875)">
<g id="g3440">
<g clip-path="url(#clipPath3444)" id="g3442">
<g id="g3448">
<g id="g3450">
<path d="M 11.52,162 C 11.52,81.677 135.307,16.561 288,16.561 l 0,0 c 152.693,0 276.481,65.116 276.481,145.439 l 0,0 c 0,80.322 -123.788,145.439 -276.481,145.439 l 0,0 C 135.307,307.439 11.52,242.322 11.52,162" id="path3462" style="fill:url(#radialGradient3452);stroke:none"/>
</g>
</g>
</g>
</g>
<g id="g3464">
<g clip-path="url(#clipPath3468)" id="g3466">
<g id="g3472" transform="translate(288,27.3594)">
<path d="M 0,0 C 146.729,0 265.68,60.281 265.68,134.641 265.68,209 146.729,269.282 0,269.282 -146.729,269.282 -265.68,209 -265.68,134.641 -265.68,60.281 -146.729,0 0,0" id="path3474" style="fill:#777bb3;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
</g>
</g>
<g id="g3476">
<g clip-path="url(#clipPath3480)" id="g3478">
<g id="g3484" transform="translate(161.7344,145.3066)">
<path d="m 0,0 c 12.065,0 21.072,2.225 26.771,6.611 5.638,4.341 9.532,11.862 11.573,22.353 1.903,9.806 1.178,16.653 -2.154,20.348 C 32.783,53.086 25.417,55 14.297,55 L -4.984,55 -15.673,0 0,0 Z m -63.063,-67.75 c -0.895,0 -1.745,0.4 -2.314,1.092 -0.57,0.691 -0.801,1.601 -0.63,2.48 L -37.679,81.573 C -37.405,82.982 -36.17,84 -34.734,84 L 26.32,84 C 45.508,84 59.79,78.79 68.767,68.513 77.792,58.182 80.579,43.741 77.05,25.592 75.614,18.198 73.144,11.331 69.709,5.183 66.27,-0.972 61.725,-6.667 56.198,-11.747 49.582,-17.939 42.094,-22.429 33.962,-25.071 25.959,-27.678 15.681,-29 3.414,-29 l -24.722,0 -7.06,-36.322 c -0.274,-1.41 -1.508,-2.428 -2.944,-2.428 l -31.751,0 z" id="path3486" style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
<g id="g3488" transform="translate(159.2236,197.3071)">
<path d="m 0,0 16.808,0 c 13.421,0 18.083,-2.945 19.667,-4.7 2.628,-2.914 3.124,-9.058 1.435,-17.767 C 36.012,-32.217 32.494,-39.13 27.452,-43.012 22.29,-46.986 13.898,-49 2.511,-49 L -9.523,-49 0,0 Z m 28.831,35 -61.055,0 c -2.872,0 -5.341,-2.036 -5.889,-4.855 l -28.328,-145.751 c -0.342,-1.759 0.12,-3.578 1.259,-4.961 1.14,-1.383 2.838,-2.183 4.63,-2.183 l 31.75,0 c 2.873,0 5.342,2.036 5.89,4.855 l 6.588,33.895 22.249,0 c 12.582,0 23.174,1.372 31.479,4.077 8.541,2.775 16.399,7.48 23.354,13.984 5.752,5.292 10.49,11.232 14.08,17.657 3.591,6.427 6.171,13.594 7.668,21.302 3.715,19.104 0.697,34.402 -8.969,45.466 C 63.965,29.444 48.923,35 28.831,35 m -45.633,-90 19.313,0 c 12.801,0 22.336,2.411 28.601,7.234 6.266,4.824 10.492,12.875 12.688,24.157 2.101,10.832 1.144,18.476 -2.871,22.929 C 36.909,3.773 28.87,6 16.808,6 L -4.946,6 -16.802,-55 M 28.831,29 C 47.198,29 60.597,24.18 69.019,14.539 77.44,4.898 79.976,-8.559 76.616,-25.836 75.233,-32.953 72.894,-39.46 69.601,-45.355 66.304,-51.254 61.999,-56.648 56.679,-61.539 50.339,-67.472 43.296,-71.7 35.546,-74.218 27.796,-76.743 17.925,-78 5.925,-78 l -27.196,0 -7.531,-38.75 -31.75,0 28.328,145.75 61.055,0" id="path3490" style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
<g id="g3492" transform="translate(311.583,116.3066)">
<path d="m 0,0 c -0.896,0 -1.745,0.4 -2.314,1.092 -0.571,0.691 -0.802,1.6 -0.631,2.48 L 9.586,68.061 C 10.778,74.194 10.484,78.596 8.759,80.456 7.703,81.593 4.531,83.5 -4.848,83.5 L -27.55,83.5 -43.305,2.428 C -43.579,1.018 -44.814,0 -46.25,0 l -31.5,0 c -0.896,0 -1.745,0.4 -2.315,1.092 -0.57,0.691 -0.801,1.601 -0.63,2.48 l 28.328,145.751 c 0.274,1.409 1.509,2.427 2.945,2.427 l 31.5,0 c 0.896,0 1.745,-0.4 2.315,-1.091 0.57,-0.692 0.801,-1.601 0.63,-2.481 L -21.813,113 2.609,113 c 18.605,0 31.221,-3.28 38.569,-10.028 7.49,-6.884 9.827,-17.891 6.947,-32.719 L 34.945,2.428 C 34.671,1.018 33.437,0 32,0 L 0,0 Z" id="path3494" style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
<g id="g3496" transform="translate(293.6611,271.0571)">
<path d="m 0,0 -31.5,0 c -2.873,0 -5.342,-2.036 -5.89,-4.855 l -28.328,-145.751 c -0.342,-1.759 0.12,-3.578 1.26,-4.961 1.14,-1.383 2.838,-2.183 4.63,-2.183 l 31.5,0 c 2.872,0 5.342,2.036 5.89,4.855 l 15.283,78.645 20.229,0 c 9.363,0 11.328,-2 11.407,-2.086 0.568,-0.611 1.315,-3.441 0.082,-9.781 l -12.531,-64.489 c -0.342,-1.759 0.12,-3.578 1.26,-4.961 1.14,-1.383 2.838,-2.183 4.63,-2.183 l 32,0 c 2.872,0 5.342,2.036 5.89,4.855 l 13.179,67.825 c 3.093,15.921 0.447,27.864 -7.861,35.5 -7.928,7.281 -21.208,10.82 -40.599,10.82 l -20.784,0 6.143,31.605 C 6.231,-5.386 5.77,-3.566 4.63,-2.184 3.49,-0.801 1.792,0 0,0 m 0,-6 -7.531,-38.75 28.062,0 c 17.657,0 29.836,-3.082 36.539,-9.238 6.703,-6.16 8.711,-16.141 6.032,-29.938 l -13.18,-67.824 -32,0 12.531,64.488 c 1.426,7.336 0.902,12.34 -1.574,15.008 -2.477,2.668 -7.746,4.004 -15.805,4.004 l -25.176,0 -16.226,-83.5 -31.5,0 L -31.5,-6 0,-6" id="path3498" style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
<g id="g3500" transform="translate(409.5498,145.3066)">
<path d="m 0,0 c 12.065,0 21.072,2.225 26.771,6.611 5.638,4.34 9.532,11.861 11.574,22.353 1.903,9.806 1.178,16.653 -2.155,20.348 C 32.783,53.086 25.417,55 14.297,55 L -4.984,55 -15.673,0 0,0 Z m -63.062,-67.75 c -0.895,0 -1.745,0.4 -2.314,1.092 -0.57,0.691 -0.802,1.601 -0.631,2.48 L -37.679,81.573 C -37.404,82.982 -36.17,84 -34.733,84 L 26.32,84 C 45.509,84 59.79,78.79 68.768,68.513 77.793,58.183 80.579,43.742 77.051,25.592 75.613,18.198 73.144,11.331 69.709,5.183 66.27,-0.972 61.725,-6.667 56.198,-11.747 49.582,-17.939 42.094,-22.429 33.962,-25.071 25.959,-27.678 15.681,-29 3.414,-29 l -24.723,0 -7.057,-36.322 c -0.275,-1.41 -1.509,-2.428 -2.946,-2.428 l -31.75,0 z" id="path3502" style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
<g id="g3504" transform="translate(407.0391,197.3071)">
<path d="M 0,0 16.808,0 C 30.229,0 34.891,-2.945 36.475,-4.7 39.104,-7.614 39.6,-13.758 37.91,-22.466 36.012,-32.217 32.493,-39.13 27.452,-43.012 22.29,-46.986 13.898,-49 2.511,-49 L -9.522,-49 0,0 Z m 28.831,35 -61.054,0 c -2.872,0 -5.341,-2.036 -5.889,-4.855 L -66.44,-115.606 c -0.342,-1.759 0.12,-3.578 1.259,-4.961 1.14,-1.383 2.838,-2.183 4.63,-2.183 l 31.75,0 c 2.872,0 5.342,2.036 5.89,4.855 l 6.587,33.895 22.249,0 c 12.582,0 23.174,1.372 31.479,4.077 8.541,2.775 16.401,7.481 23.356,13.986 5.752,5.291 10.488,11.23 14.078,17.655 3.591,6.427 6.171,13.594 7.668,21.302 3.715,19.105 0.697,34.403 -8.969,45.467 C 63.965,29.444 48.924,35 28.831,35 m -45.632,-90 19.312,0 c 12.801,0 22.336,2.411 28.601,7.234 6.267,4.824 10.492,12.875 12.688,24.157 2.102,10.832 1.145,18.476 -2.871,22.929 C 36.909,3.773 28.87,6 16.808,6 L -4.946,6 -16.801,-55 M 28.831,29 C 47.198,29 60.597,24.18 69.019,14.539 77.441,4.898 79.976,-8.559 76.616,-25.836 75.233,-32.953 72.894,-39.46 69.601,-45.355 66.304,-51.254 61.999,-56.648 56.679,-61.539 50.339,-67.472 43.296,-71.7 35.546,-74.218 27.796,-76.743 17.925,-78 5.925,-78 l -27.196,0 -7.53,-38.75 -31.75,0 28.328,145.75 61.054,0" id="path3506" style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 236 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 KiB

View File

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg version="1.0" id="svg2" sodipodi:version="0.32" inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" sodipodi:docname="python-logo-only.svg" width="83.371017pt" height="101.00108pt" inkscape:export-filename="python-logo-only.png" inkscape:export-xdpi="232.44" inkscape:export-ydpi="232.44" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<metadata id="metadata371">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview inkscape:window-height="2080" inkscape:window-width="1976" inkscape:pageshadow="2" inkscape:pageopacity="0.0" guidetolerance="10.0" gridtolerance="10.0" objecttolerance="10.0" borderopacity="1.0" bordercolor="#666666" pagecolor="#ffffff" id="base" inkscape:zoom="2.1461642" inkscape:cx="91.558698" inkscape:cy="47.9926" inkscape:window-x="1092" inkscape:window-y="72" inkscape:current-layer="svg2" width="210mm" height="40mm" units="mm" inkscape:showpageshadow="2" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" inkscape:document-units="pt" showgrid="false" inkscape:window-maximized="0"/>
<defs id="defs4">
<linearGradient id="linearGradient2795">
<stop style="stop-color:#b8b8b8;stop-opacity:0.49803922;" offset="0" id="stop2797"/>
<stop style="stop-color:#7f7f7f;stop-opacity:0;" offset="1" id="stop2799"/>
</linearGradient>
<linearGradient id="linearGradient2787">
<stop style="stop-color:#7f7f7f;stop-opacity:0.5;" offset="0" id="stop2789"/>
<stop style="stop-color:#7f7f7f;stop-opacity:0;" offset="1" id="stop2791"/>
</linearGradient>
<linearGradient id="linearGradient3676">
<stop style="stop-color:#b2b2b2;stop-opacity:0.5;" offset="0" id="stop3678"/>
<stop style="stop-color:#b3b3b3;stop-opacity:0;" offset="1" id="stop3680"/>
</linearGradient>
<linearGradient id="linearGradient3236">
<stop style="stop-color:#f4f4f4;stop-opacity:1" offset="0" id="stop3244"/>
<stop style="stop-color:white;stop-opacity:1" offset="1" id="stop3240"/>
</linearGradient>
<linearGradient id="linearGradient4671">
<stop style="stop-color:#ffd43b;stop-opacity:1;" offset="0" id="stop4673"/>
<stop style="stop-color:#ffe873;stop-opacity:1" offset="1" id="stop4675"/>
</linearGradient>
<linearGradient id="linearGradient4689">
<stop style="stop-color:#5a9fd4;stop-opacity:1;" offset="0" id="stop4691"/>
<stop style="stop-color:#306998;stop-opacity:1;" offset="1" id="stop4693"/>
</linearGradient>
<linearGradient x1="224.23996" y1="144.75717" x2="-65.308502" y2="144.75717" id="linearGradient2987" xlink:href="#linearGradient4671" gradientUnits="userSpaceOnUse" gradientTransform="translate(100.2702,99.61116)"/>
<linearGradient x1="172.94208" y1="77.475983" x2="26.670298" y2="76.313133" id="linearGradient2990" xlink:href="#linearGradient4689" gradientUnits="userSpaceOnUse" gradientTransform="translate(100.2702,99.61116)"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4689" id="linearGradient2587" gradientUnits="userSpaceOnUse" gradientTransform="translate(100.2702,99.61116)" x1="172.94208" y1="77.475983" x2="26.670298" y2="76.313133"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4671" id="linearGradient2589" gradientUnits="userSpaceOnUse" gradientTransform="translate(100.2702,99.61116)" x1="224.23996" y1="144.75717" x2="-65.308502" y2="144.75717"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4689" id="linearGradient2248" gradientUnits="userSpaceOnUse" gradientTransform="translate(100.2702,99.61116)" x1="172.94208" y1="77.475983" x2="26.670298" y2="76.313133"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4671" id="linearGradient2250" gradientUnits="userSpaceOnUse" gradientTransform="translate(100.2702,99.61116)" x1="224.23996" y1="144.75717" x2="-65.308502" y2="144.75717"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4671" id="linearGradient2255" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" x1="224.23996" y1="144.75717" x2="-65.308502" y2="144.75717"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4689" id="linearGradient2258" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" x1="172.94208" y1="76.176224" x2="26.670298" y2="76.313133"/>
<radialGradient inkscape:collect="always" xlink:href="#linearGradient2795" id="radialGradient2801" cx="61.518883" cy="132.28575" fx="61.518883" fy="132.28575" r="29.036913" gradientTransform="matrix(1,0,0,0.177966,0,108.7434)" gradientUnits="userSpaceOnUse"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4671" id="linearGradient1475" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.562541,0,0,0.567972,-14.99112,-11.702371)" x1="150.96111" y1="192.35176" x2="112.03144" y2="137.27299"/>
<linearGradient inkscape:collect="always" xlink:href="#linearGradient4689" id="linearGradient1478" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.562541,0,0,0.567972,-14.99112,-11.702371)" x1="26.648937" y1="20.603781" x2="135.66525" y2="114.39767"/>
<radialGradient inkscape:collect="always" xlink:href="#linearGradient2795" id="radialGradient1480" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-83.7008,142.46201)" cx="61.518883" cy="132.28575" fx="61.518883" fy="132.28575" r="29.036913"/>
</defs>
<path style="fill:url(#linearGradient1478);fill-opacity:1" d="M 54.918785,9.1927421e-4 C 50.335132,0.02221727 45.957846,0.41313697 42.106285,1.0946693 30.760069,3.0991731 28.700036,7.2947714 28.700035,15.032169 v 10.21875 h 26.8125 v 3.40625 h -26.8125 -10.0625 c -7.792459,0 -14.6157588,4.683717 -16.7499998,13.59375 -2.46181998,10.212966 -2.57101508,16.586023 0,27.25 1.9059283,7.937852 6.4575432,13.593748 14.2499998,13.59375 h 9.21875 v -12.25 c 0,-8.849902 7.657144,-16.656248 16.75,-16.65625 h 26.78125 c 7.454951,0 13.406253,-6.138164 13.40625,-13.625 v -25.53125 c 0,-7.2663386 -6.12998,-12.7247771 -13.40625,-13.9374997 C 64.281548,0.32794397 59.502438,-0.02037903 54.918785,9.1927421e-4 Z m -14.5,8.21875012579 c 2.769547,0 5.03125,2.2986456 5.03125,5.1249996 -2e-6,2.816336 -2.261703,5.09375 -5.03125,5.09375 -2.779476,-1e-6 -5.03125,-2.277415 -5.03125,-5.09375 -10e-7,-2.826353 2.251774,-5.1249996 5.03125,-5.1249996 z" id="path1948"/>
<path style="fill:url(#linearGradient1475);fill-opacity:1" d="m 85.637535,28.657169 v 11.90625 c 0,9.230755 -7.825895,16.999999 -16.75,17 h -26.78125 c -7.335833,0 -13.406249,6.278483 -13.40625,13.625 v 25.531247 c 0,7.266344 6.318588,11.540324 13.40625,13.625004 8.487331,2.49561 16.626237,2.94663 26.78125,0 6.750155,-1.95439 13.406253,-5.88761 13.40625,-13.625004 V 86.500919 h -26.78125 v -3.40625 h 26.78125 13.406254 c 7.792461,0 10.696251,-5.435408 13.406241,-13.59375 2.79933,-8.398886 2.68022,-16.475776 0,-27.25 -1.92578,-7.757441 -5.60387,-13.59375 -13.406241,-13.59375 z m -15.0625,64.65625 c 2.779478,3e-6 5.03125,2.277417 5.03125,5.093747 -2e-6,2.826354 -2.251775,5.125004 -5.03125,5.125004 -2.76955,0 -5.03125,-2.29865 -5.03125,-5.125004 2e-6,-2.81633 2.261697,-5.093747 5.03125,-5.093747 z" id="path1950"/>
<ellipse style="opacity:0.44382;fill:url(#radialGradient1480);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:15.4174;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path1894" cx="55.816761" cy="127.70079" rx="35.930977" ry="6.9673119"/>
</svg>

After

Width:  |  Height:  |  Size: 8.0 KiB

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="circle_pieces" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="511.875px" height="511.824px" viewBox="0 0 511.875 511.824" enable-background="new 0 0 511.875 511.824" xml:space="preserve">
<circle id="circle" fill="#FFFFFF" cx="256.252" cy="255.986" r="253.093"/>
<path id="blue-piece" fill="#3E5BA9" d="M455.398,412.197c33.792-43.021,53.946-97.262,53.946-156.211 c0-139.779-113.313-253.093-253.093-253.093c-30.406,0-59.558,5.367-86.566,15.197C272.435,71.989,408.349,247.839,455.398,412.197z "/>
<path id="left-red-piece" fill="#9F1D20" d="M220.003,164.337c-39.481-42.533-83.695-76.312-130.523-98.715 C36.573,112.011,3.159,180.092,3.159,255.986c0,63.814,23.626,122.104,62.597,166.623 C100.111,319.392,164.697,219.907,220.003,164.337z"/>
<path id="bottom-red-piece" fill="#9F1D20" d="M266.638,221.727c-54.792,59.051-109.392,162.422-129.152,257.794 c35.419,18.857,75.84,29.559,118.766,29.559c44.132,0,85.618-11.306,121.74-31.163C357.171,381.712,317.868,293.604,266.638,221.727 z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="256px" height="256px" viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid">
<title>rescript</title>
<g>
<path d="M247.286123,18.7650117 C244.462828,14.9093699 241.055605,11.517528 237.187229,8.71170659 C225.227899,0 208.145313,0 173.982311,0 L81.96993,0 C47.809099,0 30.7286835,0 18.7650117,8.71170659 C14.9011548,11.5075016 11.5075016,14.9011548 8.71170659,18.7650117 C0,30.7265126 0,47.8069281 0,82.0155183 L0,173.982311 C0,208.143142 0,225.214874 8.71170659,237.187229 C11.517528,241.055605 14.9093699,244.462828 18.7650117,247.286123 C30.7265126,256 47.8069281,256 81.96993,256 L173.982311,256 C208.143142,256 225.214874,256 237.187229,247.286123 C241.046359,244.451642 244.451642,241.046359 247.286123,237.187229 C256,225.227899 256,208.145313 256,173.982311 L256,82.0155183 C255.989146,47.8069281 255.989146,30.7265126 247.286123,18.7650117 Z M118.553453,174.123417 C118.553453,182.129591 118.553453,186.178266 117.250931,189.341225 C115.503635,193.55471 112.155719,196.902625 107.942234,198.649922 C104.777104,199.952444 100.778359,199.952444 92.7222557,199.952444 C84.7160823,199.952444 80.6674073,199.952444 77.5044477,198.649922 C73.2909627,196.902625 69.9430476,193.55471 68.1957515,189.341225 C66.8932287,186.178266 66.8932287,182.129591 66.8932287,174.123417 L66.8932287,89.6960611 C66.8932287,80.013975 66.8932287,75.1751028 68.7558363,71.4998177 C70.4158936,68.2574844 73.0534172,65.6192014 76.2952724,63.9582107 C79.9640449,62.097774 84.8137715,62.097774 94.4480984,62.097774 L118.557795,62.097774 L118.553453,174.123417 Z M173.476498,123.895968 C156.69135,123.895968 143.084299,110.288917 143.084299,93.5037693 C143.084299,76.7186216 156.69135,63.1115709 173.476498,63.1115709 C190.261645,63.1115709 203.868704,76.7186216 203.868704,93.5037693 L203.868704,93.5037693 C203.874456,101.558901 200.679941,109.286371 194.987971,114.986076 C189.296,120.685782 181.572876,123.890788 173.517744,123.895968 L173.476498,123.895968 Z" fill="#D44140"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 KiB

BIN
public/img/rust-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64"><linearGradient id="A" gradientUnits="userSpaceOnUse" x1="13.528" y1="-36.176" x2="88.264" y2="-36.176"><stop offset="0" stop-color="#656565"/><stop offset="1" stop-color="#010101"/></linearGradient><linearGradient id="B" gradientUnits="userSpaceOnUse" x1="13.528" y1="3.91" x2="88.264" y2="3.91"><stop offset="0" stop-color="#656565"/><stop offset="1" stop-color="#010101"/></linearGradient><linearGradient id="C" gradientUnits="userSpaceOnUse" x1="13.528" y1="-55.974" x2="88.264" y2="-55.974"><stop offset="0" stop-color="#9f1c20"/><stop offset="1" stop-color="#ed2224"/></linearGradient><linearGradient id="D" gradientUnits="userSpaceOnUse" x1="13.528" y1="-15.87" x2="88.264" y2="-15.87"><stop offset="0" stop-color="#9f1c20"/><stop offset="1" stop-color="#ed2224"/></linearGradient><linearGradient id="E" gradientUnits="userSpaceOnUse" x1="13.528" y1="24.22" x2="88.264" y2="24.22"><stop offset="0" stop-color="#9f1c20"/><stop offset="1" stop-color="#ed2224"/></linearGradient><g transform="matrix(.492308 0 0 .492308 6.941539 39.876923)"><path d="M13.4-31s75 7.5 75 20v-30s0-12.5-75-20z" fill="url(#A)"/><path d="M13.4 9s75 7.5 75 20V-1s0-12.5-75-20z" fill="url(#B)"/><path d="M88.4-81v30s0 12.5-75 20v-30s75-7.5 75-20" fill="url(#C)"/><path d="M13.4-21s75-7.5 75-20v30s0 12.5-75 20z" fill="url(#D)"/><path d="M13.4 49V19s75-7.5 75-20v30s0 12.5-75 20" fill="url(#E)"/></g></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

22
public/img/swift-logo.svg Executable file
View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="106.1px" height="106.1px" viewBox="-252 343.9 106.1 106.1" enable-background="new -252 343.9 106.1 106.1"
xml:space="preserve">
<g>
<path fill="#F05138" d="M-145.9,373.3c0-1.1,0-2.1,0-3.2c-0.1-2.3-0.2-4.7-0.6-7c-0.4-2.3-1.1-4.5-2.2-6.6c-1.1-2.1-2.4-4-4.1-5.6
c-1.7-1.7-3.6-3-5.6-4.1c-2.1-1.1-4.3-1.8-6.6-2.2c-2.3-0.4-4.6-0.6-7-0.6c-1.1,0-2.1,0-3.2,0c-1.3,0-2.5,0-3.8,0h-28.1h-11.6
c-1.3,0-2.5,0-3.8,0c-1.1,0-2.1,0-3.2,0c-0.6,0-1.2,0-1.7,0.1c-1.7,0.1-3.5,0.2-5.2,0.5c-1.7,0.3-3.4,0.8-5,1.4
c-0.5,0.2-1.1,0.5-1.6,0.7c-1.6,0.8-3,1.8-4.4,2.9c-0.4,0.4-0.9,0.8-1.3,1.2c-1.7,1.7-3,3.6-4.1,5.6c-1.1,2.1-1.8,4.3-2.2,6.6
c-0.4,2.3-0.5,4.6-0.6,7c0,1.1,0,2.1,0,3.2c0,1.3,0,2.5,0,3.8v17.3v22.4c0,1.3,0,2.5,0,3.8c0,1.1,0,2.1,0,3.2
c0.1,2.3,0.2,4.7,0.6,7c0.4,2.3,1.1,4.5,2.2,6.6c1.1,2.1,2.4,4,4.1,5.6c1.7,1.7,3.6,3,5.6,4.1c2.1,1.1,4.3,1.8,6.6,2.2
c2.3,0.4,4.6,0.6,7,0.6c1.1,0,2.1,0,3.2,0c1.3,0,2.5,0,3.8,0h39.7c1.3,0,2.5,0,3.8,0c1.1,0,2.1,0,3.2,0c2.3-0.1,4.7-0.2,7-0.6
c2.3-0.4,4.5-1.1,6.6-2.2c2.1-1.1,4-2.4,5.6-4.1c1.7-1.7,3-3.6,4.1-5.6c1.1-2.1,1.8-4.3,2.2-6.6c0.4-2.3,0.6-4.6,0.6-7
c0-1.1,0-2.1,0-3.2c0-1.3,0-2.5,0-3.8v-39.7C-145.9,375.8-145.9,374.6-145.9,373.3z"/>
<path fill="#FFFFFF" d="M-168,409.4c0.1-0.4,0.2-0.8,0.3-1.2c4.4-17.5-6.3-38.3-24.5-49.2c8,10.8,11.5,23.9,8.4,35.3
c-0.3,1-0.6,2-1,3c-0.4-0.3-0.9-0.6-1.6-0.9c0,0-18.1-11.2-37.7-30.9c-0.5-0.5,10.5,15.7,22.9,28.8c-5.9-3.3-22.2-15.2-32.6-24.6
c1.3,2.1,2.8,4.2,4.4,6.1c8.6,11,19.9,24.5,33.4,34.9c-9.5,5.8-22.9,6.3-36.2,0c-3.3-1.5-6.4-3.4-9.3-5.5
c5.6,9,14.3,16.8,24.9,21.4c12.6,5.4,25.2,5.1,34.5,0.1l0,0c0,0,0.1,0,0.1-0.1c0.4-0.2,0.8-0.5,1.2-0.7c4.5-2.3,13.3-4.6,18.1,4.6
C-161.3,432.6-158.8,420.6-168,409.4C-168,409.4-168,409.4-168,409.4z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

21
public/img/zig-logo.svg Normal file
View File

@ -0,0 +1,21 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 153 140">
<g fill="#F7A41D">
<g>
<polygon points="46,22 28,44 19,30"/>
<polygon points="46,22 33,33 28,44 22,44 22,95 31,95 20,100 12,117 0,117 0,22" shape-rendering="crispEdges"/>
<polygon points="31,95 12,117 4,106"/>
</g>
<g>
<polygon points="56,22 62,36 37,44"/>
<polygon points="56,22 111,22 111,44 37,44 56,32" shape-rendering="crispEdges"/>
<polygon points="116,95 97,117 90,104"/>
<polygon points="116,95 100,104 97,117 42,117 42,95" shape-rendering="crispEdges"/>
<polygon points="150,0 52,117 3,140 101,22"/>
</g>
<g>
<polygon points="141,22 140,40 122,45"/>
<polygon points="153,22 153,117 106,117 120,105 125,95 131,95 131,45 122,45 132,36 141,22" shape-rendering="crispEdges"/>
<polygon points="125,95 130,110 106,117"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 831 B

View File

@ -0,0 +1,12 @@
---
const { lang, icon, href } = Astro.props;
---
<a href={href} target="_blank">
<img
class="inline-block h-8 px-1 my-1"
src={`/img/${icon}-logo.svg`}
alt={`${lang} logo`}
title={`${lang} logo`}
/>
</a>

1
src/env.d.ts vendored Normal file
View File

@ -0,0 +1 @@
/// <reference types="astro/client" />

158
src/pages/index.astro Normal file
View File

@ -0,0 +1,158 @@
---
import LangLogo from "../components/LangLogo.astro";
---
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width" />
<meta name="generator" content={Astro.generator} />
<link rel="stylesheet" href="/global.css" />
<title>Astro</title>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;500;600;700;800;900&family=Fira+Code&display=swap"
rel="stylesheet"
/>
<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap"
rel="stylesheet"
/>
<link
rel="stylesheet"
type="text/css"
href="https://unpkg.com/@phosphor-icons/web@2.1.1/src/regular/style.css"
/>
<script src="//unpkg.com/alpinejs" defer></script>
</head>
<body>
<div class="p-2">
<h1 class="text-xl font-light py-4">
Hi 👋! I'm
<br />
<span class="font-black text-3xl">Fernando Araoz</span>
</h1>
<div class="text-center">
<div class="inline-block w-28 h-28 rounded-full bg-slate-500">
</div>
</div>
<p class="text-center">
I'm a (human) software engineer passionate about web
technologies. I love building things and learning new stuff.
</p>
<div x-data="{open: true}">
<h2
class="text-2xl font-bold mt-6 py-2 pl-2 cursor-pointer hover:underline sticky top-0 bg-c-bg border-b border-b-slate-600"
@click="open = !open"
>
Languages
<i
x-bind:class="open? 'ph ph-caret-down': 'ph ph-caret-right'"
></i>
</h2>
<div class="border-l border-b rounded-bl-lg border-slate-600 pt-4 pl-1 pb-2" x-show="open">
<div class="grid grid-cols-[5rem_auto] gap-x-2 gap-y-4">
<img
class="inline-block p-2"
src="/img/ts-logo.png"
alt="TS logo"
/>
<p>
<span
class="text-yellow-600 dark:text-yellow-400 font-medium text-lg"
>
JS/TS
</span>
: Being the lingua franca of the web, I've used a lot
of JS/TS, vanilla and with frameworks.
</p>
<img
class="inline-block p-2"
src="/img/java-logo.png"
alt="Java logo"
/>
<p>
<span
class="text-purple-700 dark:text-purple-500 font-medium text-lg"
>
Java/Kotlin
</span>
: The language I learned in university, along with JS/TS
is the language I've used the most. I've mostly written
DSAs and backends with it (JSP/Spring).
</p>
<img
class="inline-block p-2"
src="/img/rust-logo.png"
alt="Rust logo"
/>
<p>
<span
class="text-amber-800 dark:text-amber-600 font-medium text-lg"
>
Rust
</span>
: Currently my favorite language, I began learning it
in late 2022. I've written a backend and I'm currently
writing a programming language.
</p>
<img
class="inline-block p-2"
src="/img/go-logo.png"
alt="Go logo"
/>
<p>
<span
class="text-sky-600 dark:text-sky-400 font-medium text-lg"
>
Go
</span>
: I'm currently learning Go through advent of code, and
I hope to use it for some projects in the future.
</p>
</div>
<p class="my-4">
<span class="font-medium text-lg">Others</span>: Other
languages I've used (mostly at uni):
<br />
<div class="text-center">
<LangLogo href="https://www.iso.org/standard/74528.html" lang="C" icon="c" />
<LangLogo href="https://isocpp.org/std/the-standard" lang="C++" icon="cpp" />
<LangLogo href="https://learn.microsoft.com/en-us/dotnet/csharp/" lang="Microsoft Java" icon="c-sharp" />
<LangLogo href="https://www.php.net/" lang="PHP" icon="php" />
<LangLogo href="https://www.python.org/" lang="Python" icon="python" />
<LangLogo href="https://dart.dev/" lang="Dart" icon="dart" />
</div>
<br />
Other languages I've tried for fun:
<br />
<div class="text-center">
<LangLogo href="https://elixir-lang.org/" lang="Elixir" icon="elixir" />
<LangLogo href="https://www.erlang.org/" lang="Erlang" icon="erlang" />
<LangLogo href="https://gleam.run/" lang="Gleam" icon="gleam" />
<LangLogo href="https://coffeescript.org/" lang="CoffeeScript" icon="coffeescript" />
<LangLogo href="https://racket-lang.org/" lang="Racket" icon="racket" />
<LangLogo href="https://ziglang.org/" lang="Zig" icon="zig" />
<LangLogo href="https://learn.microsoft.com/en-us/dotnet/fsharp/what-is-fsharp" lang="F#" icon="f-sharp" />
<LangLogo href="https://www.haskell.org/" lang="Haskell" icon="haskell" />
<LangLogo href="https://ocaml.org/" lang="OCaml" icon="ocaml" />
<LangLogo href="https://rescript-lang.org/" lang="Rescript" icon="rescript" />
<LangLogo href="https://www.swift.org/" lang="Swift" icon="swift" />
<LangLogo href="https://www.scala-lang.org/" lang="Scala" icon="scala" />
<LangLogo href="https://clojure.org/" lang="Clojure" icon="clojure" />
<LangLogo href="https://www.gnu.org/software/bash/" lang="Bash" icon="bash" />
<LangLogo href="https://www.lua.org/" lang="Lua" icon="lua" />
</div>
</p>
<p>
In general I like to try new languages, explore new
concepts and see new ways to solve problems.
</p>
</div>
</div>
</div>
</body>
</html>

View File

@ -1,34 +0,0 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
:root {
--c-bg: #191a1d;
--c-on-bg: white;
}
@media (prefers-color-scheme: light) {
:root {
--c-bg: white;
--c-on-bg: black;
}
}
html {
font-size: 20px;
}
body {
background-color: var(--c-bg);
color: var(--c-on-bg);
font-family: 'Fira Mono', monospace;
}
.scroll-container {
scroll-snap-type: y mandatory;
}
.scroll-container > div {
scroll-snap-align: start;
}

View File

@ -1,16 +0,0 @@
/** @type {import('tailwindcss').Config} */
export default {
content: [
"./index.html",
],
theme: {
extend: {
fontFamily: {
xanh: ["Xanh Mono", "monospace"],
firamono: ["Fira Mono", "monospace"],
}
},
},
plugins: [],
}

13
tailwind.config.mjs Normal file
View File

@ -0,0 +1,13 @@
/** @type {import('tailwindcss').Config} */
export default {
content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'],
theme: {
extend: {
colors: {
'c-bg': 'var(--c-bg)',
'c-on-bg': 'var(--c-on-bg)',
},
},
},
plugins: [],
}

3
tsconfig.json Normal file
View File

@ -0,0 +1,3 @@
{
"extends": "astro/tsconfigs/strictest"
}