From 7e397908fe602c4220719bade1f93212e79c7912 Mon Sep 17 00:00:00 2001 From: zeim839 Date: Sat, 13 Jan 2024 05:51:36 -0500 Subject: [PATCH] feat: added description metadata, image width/height --- views/article.ejs | 86 +++--- views/components/blog-grid.ejs | 2 +- views/index.ejs | 484 +++++++++++++++++---------------- 3 files changed, 301 insertions(+), 271 deletions(-) diff --git a/views/article.ejs b/views/article.ejs index ceaa285..29b3dc6 100644 --- a/views/article.ejs +++ b/views/article.ejs @@ -1,44 +1,48 @@ - - - - - UF Open Source Club | <%= locals.title %> - - - - - - - <%- include('./components/navbar.ejs') %> -
- <% if (locals.previewImg) { %> - - <% } %> -
-

<%= title %>

-
-

Date: <%= date.toLocaleDateString('en-us', { month: "long", day: "numeric", year: "numeric" }) %>

- <% if (locals.author) { %> -

Author: <% for(var i=0; i < author.length; i++) { %> - <%= author[i] %> - <% } %> -

- <% } %> -
- <% if (locals.subtitle) { %> -

- <%- subtitle %> -

- <% } %> - <% if (locals.content) { %> -

- <%- content %> -

- <% } %> -
-
- <%- include('./components/footer.ejs') %> - + + + + + + UF Open Source Club | <%= locals.title %> + + + + + + + <%- include('./components/navbar.ejs') %> +
+ <% if (locals.previewImg) { %> + + <% } %> +
+

<%= title %>

+
+

Date: <%= date.toLocaleDateString('en-us', { month: "long", day: "numeric", year: "numeric" }) %>

+ <% if (locals.author) { %> +

Author: <% for(var i=0; i < author.length; i++) { %> + <%= author[i] %> + <% } %> +

+ <% } %> +
+ <% if (locals.subtitle) { %> +

+ <%- subtitle %> +

+ <% } %> + <% if (locals.content) { %> +

+ <%- content %> +

+ <% } %> +
+
+ <%- include('./components/footer.ejs') %> + diff --git a/views/components/blog-grid.ejs b/views/components/blog-grid.ejs index a853456..bb3dd84 100644 --- a/views/components/blog-grid.ejs +++ b/views/components/blog-grid.ejs @@ -4,7 +4,7 @@ "blog__posts-large" } %> <% if (!locals.maxItems || index < locals.maxItems) { %>
- + blog preview image

<% if ( styleName == "blog__posts-small" && elem.title.toString().length > 20) { %> <%= elem.title.toString().substring(0, 17) + "..." %> diff --git a/views/index.ejs b/views/index.ejs index 9fc9d25..35601e6 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -1,243 +1,269 @@ - - UF Open Source Club | Home - - - - - - - - - - - - <%- include('./components/alert.ejs') %> - <%- include('./components/navbar.ejs') %> - - -
-
-

OPEN SOURCE CLUB

-
- OSC is the Open Source Club at the University of Florida. We are a community of makers, - who want to solve problems and improve our world using open source projects. -
-
- - -
+ + UF Open Source Club | Home + + + + + + + + + + + + + + <%- include('./components/alert.ejs') %> + <%- include('./components/navbar.ejs') %> + + +
+
+

OPEN SOURCE CLUB

+
+ OSC is the Open Source Club at the University of Florida. We are a community of makers, + who want to solve problems and improve our world using open source projects. +
+
+ + +
+
+
+
+
+

Portfolio

+
Most recent Projects
+
+
+
+
+
+

Bytes of Love

+

A visual novel dating simulator where you can play as a + college student trying to rizz up anime girl-ified versions + of your favorite programming languages! Built in Python with + tool: Ren'py. +

+
-
-
-
-

Portfolio

-
Most recent Projects
+
+

JukeBox

+

A web application that allows group members to queue up songs + to their group’s playlist, and enables members to collect points + for future use. Built in React and Typescript with frameworks: + MongoDB, Express.js, React.js, and Node.js. +

+
-
-
-
-
-

Bytes of Love

-

A visual novel dating simulator where you can play as a college student trying to rizz up anime girl-ified versions of your favorite programming languages! - Built in Python with tool: Ren'py. -

- -
-
-

JukeBox

-

A web application that allows group members to queue up songs to their group’s playlist, and enables members to collect points for future use. - Built in React and Typescript with frameworks: MongoDB, Express.js, React.js, and Node.js. -

- -
-
-

Proximity Chat

-

An application that allow users to chat with people that they are physically around, say in the same building! - Built with TypeScript with frameworks/tools: React Native, Firebase, Node.js, Express.js, Expo. -

- -
-
-

OSC Website

-

A website to serve as a landing page for new members as a hub of information about the club, with a dynamic blog and content management system. - Built in Javascript, HTML, CSS, with the frameworks/tools: Node.js, Express.js, EJS. -

- -
-
-

Schedule Helper

-

A website to assist students in creating schedules that work for them by using UF's Schedule of Courses along with - RateMyProfessor and GatorEval scores. Built in Typescript and Python, with the frameworks/tools: React, Tailwind. -

- -
- -
-

Manim

-

Inspired by 3Blue1Brown, creating a plug-in that adds to the Manim project which would allow for programmatic animation of computer science concepts. - Built in Python, with the frameworks/tools: Poetry, Manim. -

- -
-
-

API Group

-

Working on several small projects that involve APIs to gain knowledge about building and using them. Built in Python, - with FastAPI. -

- -
- - - - -
-
+
+

Proximity Chat

+

An application that allow users to chat with people that they are + physically around, say in the same building! Built with + TypeScript with frameworks/tools: React Native, Firebase, + Node.js, Express.js, Expo. +

+
- -
-

- Active projects are official club projects that have an assigned technical lead, are given club resources, - and are the first projects mentioned to new members. New projects are proposed and voted on at the beginning of each semester. - All projects utilize Git, GitHub, and open source development principles. -

-
-
-
-
-

Blog

-
Recent Posts
+
+

OSC Website

+

A website to serve as a landing page for new members as a hub + of information about the club, with a dynamic blog and content + management system. Built in Javascript, HTML, CSS, with the + frameworks/tools: Node.js, Express.js, EJS. +

+
- <%- include('./components/blog-grid.ejs', { blog: locals.blog }) %> -
- +
+

Schedule Helper

+

A website to assist students in creating schedules that work + for them by using UF's Schedule of Courses along with + RateMyProfessor and GatorEval scores. Built in Typescript + and Python, with the frameworks/tools: React, Tailwind. +

+
-
-
-
-

BECOME A MEMBER

-
JOIN THE OSC
+ +
+

Manim

+

Inspired by 3Blue1Brown, creating a plug-in that adds to the + Manim project which would allow for programmatic animation of + computer science concepts. Built in Python, with the + frameworks/tools: Poetry, Manim. +

+
-
-
-
- -
-

Free forever

-
Join our club for free and enjoy a membership without any fees because we - believe in inclusivity and accessibility for all. -
-
-
-
- -
-

Casual commitment

-
Enjoy the flexibility to come and go as you please, participate in our meetings, casual codings, and - socials on your own schedule. -
-
-
-
- -
-

No experience necessary

-
Members of all skill and experience levels are welcome. All that is needed is a willingness to learn.
-
-
-
- -
-

Join/leave anytime

-
We welcome you to be a part of our community on your own terms, regardless of busy schedules and changing commitments. -
-
-
-
+
+

API Group

+

Working on several small projects that involve APIs to gain + knowledge about building and using them. Built in Python, + with FastAPI. +

+
-
-

- The best way to become involved with Open Source Club is to join our Discord linked below to stay up to date with club events. -

+ + +
+
+
+
+

+ Active projects are official club projects that have an assigned + technical lead, are given club resources, and are the first projects + mentioned to new members. New projects are proposed and voted on at + the beginning of each semester. All projects utilize Git, GitHub, + and open source development principles. +

+
+
+
+
+

Blog

+
Recent Posts
+
+ <%- include('./components/blog-grid.ejs', { blog: locals.blog }) %> +
+ +
+
+
+
+

BECOME A MEMBER

+
JOIN THE OSC
+
+
+
+
+ free forever +
+

Free forever

+
Join our club for free and enjoy a membership without any fees because we + believe in inclusivity and accessibility for all. +
- +
+ casual commitment +
+

Casual commitment

+
Enjoy the flexibility to come and go as you please, participate in our meetings, casual codings, and + socials on your own schedule. +
-
-
-
-

CONTACT

-
GET IN TOUCH
+
+
+ club perks +
+

No experience necessary

+
Members of all skill and experience levels are welcome. All that is needed is a willingness to learn.
-
-
-
-
-
- - -
-
- - -
- -
- - -
-
- -
-
-
-
- We're here to help! If you have any questions, suggestions, or comments about the Open Source Club, please feel free - to reach out to us using the contact form to the left. Our team is dedicated to provided the best experience for our members, - and we value your feedback. Whether you're interested in joining our club, have questions about our activities, or just want to get - in touch, we'll do our best to respond promptly. Thank you for your interest in the Open Source Club, and we look forward to hearing from you! -
-
+
+
+ leave the club at any time +
+

Join/leave anytime

+
We welcome you to be a part of our community on your own terms, regardless of busy schedules and changing commitments. +
-
-
- <%- include('./components/footer.ejs') %> - - +
+

+ +
+

+ The best way to become involved with Open Source Club is to join our Discord linked below to stay up to date with club events. +

+
+
+ +
+ +
+
+

CONTACT

+
GET IN TOUCH
+
+
+
+
+
+
+ + +
+
+ + +
+ +
+ + +
+
+ +
+
+
+
+ We're here to help! If you have any questions, suggestions, or comments about the Open Source Club, please feel free + to reach out to us using the contact form to the left. Our team is dedicated to provided the best experience for our members, + and we value your feedback. Whether you're interested in joining our club, have questions about our activities, or just want to get + in touch, we'll do our best to respond promptly. Thank you for your interest in the Open Source Club, and we look forward to hearing from you! +
+
+
+
+
+ <%- include('./components/footer.ejs') %> + +