星占いウェブサイト



私の提出の概要
私がこのハッカーのためにすることに決めたプロジェクトは、私がしばらくの間私のバケツリストに持っていたものでした、しかし、私は私がどれくらい忙しかったので決して行うことができませんでした.今私は最終的に行う動機を持っているので、私はAstroPhotographyのウェブサイトを完了することを決めた.私はかなりきちんとした望遠鏡を持っています、そして、私はそれを通して見るすべてをイメージするのが好きです、そして、私が私が私の望遠鏡で撮った写真を共有させるウェブサイトを作りたかったです.それは私の望遠鏡でこれまでに取ったイメージを共有するために、このウェブサイトの目的です.このウェブサイトは、データベースとしてMongoDBを使用して各画像を格納し、NODEJSとExpressJSの使用を介してユーザーにそれを提供します.このウェブサイトはHerokuホスティングサービスを実行するように設計されています.Here is the link to the website

私のウェブサイトの一般的な訪問者のために、ウェブサイトは着陸またはホームページを特徴とします.


私のサイトに掲示されたすべての画像だけでなく、それぞれの画像についての情報を表示することができます各画像の個人的なビューと、フルサイズの画像を表示するためのリンクを表示するページ.

私がフォームを通して私にメッセージを送ることができるか、直接私にメールで送ることができる接触Meフォーム.

私が持っている各々の望遠鏡を示して、私は私のウェブサイト上のコンテンツのライセンスを(ちょうど1つの望遠鏡)と使用している私についてのページ.

それを超えて、私は私が私のウェブサイト上のコンテンツを管理できる簡単な管理ページを作成しました.

私は、新しいイメージをウェブサイトにアップロードすることができます.私は画像をアップロードするたびに、Webアプリはまた、その画像の2つのより多くのバージョンを作成し、小さな視聴のための1つ、サムネイルとして他のウェブサイトのパフォーマンスを支援する.

また、管理ページから各イメージについての情報を編集することもできます.

私も選択する場合は、各画像を削除することができます.したがって、管理ページから完全なCRUD関数があります.

私も私のウェブサイト上のコンテンツを保護するために認証システムを作成したので、誰も私のデータを混乱させることができます.

私のウェブサイトのフロントエンドのために、私は最高のパフォーマンスのためにできるだけ簡単に各々のウェブページを作ろうとしました.私はそれが使用されているJinja 2のポートであり、それは良いドキュメントを持っているので、テンプレートエンジンとしてNunJuckを使用している.各ページは、スマートフォンだけでなく、デスクトップコンピュータ上で良いように、応答するように設計されています.フロントエンドではJavaScriptがほとんど使われていなかった.私はメニュー用のJavaScriptを使用する必要があります.

提出カテゴリ
この提出のためのカテゴリーは、あなた自身の冒険を選ぶでしょう.これは、他のカテゴリには適合していないため、私はそれが超空想的なWebアプリではない何か、本当に狂ったですが、それは私が長い間、今作成したいものです知っている.

コードへのリンク

nwrocketman64 / astrophotography-website
AstroPhotographyのウェブサイトのコードベース.
概要
これは私のAstroPhotographyのウェブサイトの主なコードベースです.ここのコードはオープンソースになります
Apacheライセンス2.0では、コードを見て任意の
コードを改善するか、それをコピーして、あなたのウェブサイトのためにベーステンプレートとしてそれを使ってください.このウェブサイトには
クッキーセッションとイメージアップロード.ウェブサイトを介して実行するように設計されて
Heroku
このウェブサイトは、nodejsバージョン16.13.1で動くように設計されています.
インストール
お使いのコンピュータ上で実行するためのWebサイトをインストールするには
GitHubウェブサイトを使用するか、Gitを通して.一旦それがあなたのコンピュータにあるならば、ウェブサイトを得てください
を実行する必要があります.環境変数環境変数を含むプロセス
OrigonDBRes URLは、SessionCert秘密、Gmailのユーザー、およびGmailのパス.ファイルを一度インストールすると、すべてをインストールできます
NPMパッケージマネージャを使用する必要なライブラリ.
npm install

View on GitHub
Link to my Astrophotography Website

追加情報
私は自分のパソコンでWebアプリを構築するNodejs and VS code . 私も私のラズベリーパイのコンピュータ上でいくつかの開発を行った.
これらは私がプロジェクトを完了するために使用したライブラリです.

  • Express - 主なWebフレームワーク.

  • Express Session - 可能な限りログを作成するために使用します.

  • Express Validator - ユーザー入力を検証して、消毒するのに用いられます.

  • Csurf - ウェブサイトにCSRF保護を提供してください.

  • Bcypt - パスワードを暗号化しハッシュを比較するために使用します.

  • Mongoose - ライブラリはmongodbを制御するために使用されます.

  • Multer - Witeに提出された画像を処理するために使用します.

  • Nodemailer - 自分にメールを送信する連絡先フォームで使用されます.

  • Nunjucks - プロジェクトで使用されるメインテンプレートエンジン.これは基本的には、PythonフラスコとPythonのジャンゴで使用するJinja 2のテンプレートエンジンのポートです.

  • Nunjucks Date - テンプレートエンジンの日付フィルターを提供します.

  • Sharp - ライブラリが受信したときに画像を処理するために使用されます.

  • Nodemon - それはあなたが変更を行うたびにアプリを再起動としてWebアプリケーションを開発する際に使用されます.
  • これらはいくつかの記事/チュートリアルは本当に私が使用してnodejsを学び、いくつかのWebアプリケーションの機能を追加しました.
  • NodeJS - The Complete Guide (MVC, REST APIs, GraphQL, Deno)
  • Upload and Retrieve Image on MongoDB using Mongoose
  • Create Pagination with Node.js, MongoDB, Express and EJS Step by Step from Scratch
  • Mongoose Count
  • How To Process Images in Node.js With Sharp
  • Templating
  • Node.js Send an Email
  • ExpressJS Tutorial