Repositório com todos os elementos da Química e suas propriedades.
Mostrar os elementos da Química de forma mais simples e usável do que a Tabela Periódica.
Nossa "tabela periódica" será, inicialmente, visualizada com os elementos separados em 3 categorias:
- Gasoso 💨
- Líquido💧
- Sólido 💎
Vai dizer que não fica mais simples pensar assim?
Nossa ideia é atualizar e melhorar a Tabela Periódica, pois não precisamos mais, necessariamente, utilizar ela como foi criada.
Por quê?
Aí eu lhe pergunto:
Se você entrar em uma Tabela Periódica o que você fará? Não irá buscar alguma propriedade de algum elemento que você pode até não conhecer?
Correto.
Agora imagine um Sistema Web onde você pudesse ter todas as informações de um elemento tanto no navegador, como no celular, como no sistema operacional.
E que TODA informação fosse atualizada e criada pela comunidade de químicos?
Não seria muito melhor?
É...
E se você além de ter todas as informações dos elementos e suas moléculas ainda pudesse ter uma calculadora tipo HP, porém específica para Química?
Quanto você pagaria para ter TODA essa informação??
Pois eu mesmo lhe responderei:
Nada.
Para facilitar o entendimento dos elementos da Química separamos os elementos, inicialmente, em 3 grandes categorias, baseadas em seu estado da matéria:
- Gasoso 💨
- Líquido💧
- Sólido 💎
Logo após temos a seguinte separação:
- Gasoso 💨
- Nobres
- Comuns
- Líquido 💧
- Ametal
- Metal
- Sólido 💎
- Ametal
- Metal
Precisamos criar um padrão, work in progress, para que futuramente possa ser utilizada em qualquer linguagem.
Por isso eu e a Franciele pensamos em colocar boa parte das propriedades dos elementos no JSON.
Vejamos esse exemplo do Hidrogênio:
module.exports = {
simbolo: 'H',
nome: 'hidrogenio',
familia: [
{
coluna: '1'
},
{
grupo: '1A'
},
{
descritivo: 'sem familia'
}
],
periodo: 1,
numero: {
eletrons: 1,
neutrons: 0,
protons: 1
},
distribuicaoEletronica: {
k: {
s: 1
},
l: {
s: 0,
p: 0
},
m: {
s: 0,
p: 0,
d: 0
},
n: {
s: 0,
p: 0,
d: 0,
f: 0
},
o: {
s: 0,
p: 0,
d: 0,
f: 0
},
p: {
s: 0,
p: 0,
d: 0
},
q: {
s: 0,
p: 0
}
},
propriedades: {
fisicas: {
densidade: {
valor: 0.0899,
unidade: 'kg/m3'
},
estadodaMateria: {
valor: 'gasoso'
},
raioAtomico: {
valor: 53,
unidade: 'pm'
},
massaAtomica: {
valor: 1.00797,
unidade: 'u'
}
},
quimicas: {
meiaVida: require('property-meiavida-h'),
estadoOxidacao: require('property-estado-oxidacao-h'),
estruturaCristalina: require('property-estrutura-cristalina-h'),
eletronegatividadePauling: require('property-eletronegatividade-de-pauling-h'),
pontoFusao: {
valor: 14.025,
unidade: require('unity-k').unidade
},
pontoEbulicao: {
valor: 20.268,
unidade: require('unity-k').unidade
},
energiaIonizacao: {
valor: 1312,
unidade: require('unity-kjXmol-1').unidade
},
raioCovalente: {
valor: 12.3,
unidade: require('unity-pm').unidade
},
raioVanderWaals: {
valor: 120,
unidade: require('unity-pm').unidade
},
entalpiadefusao: {
valor: 0.05868,
unidade: require('unity-kjXmol-1').unidade
},
entalpiadevaporizacao: {
valor: 0.44936,
unidade: require('unity-kjXmol-1').unidade
},
volumeMolar: {
valor: 0.0000114,
unidade: require('unity-kjXmol-1').unidade
},
pressaodeVapor: {
pressao: {
valor: 209,
unidade: require('unity-pa').unidade,
},
temperatura: {
valor: 23,
unidade: require('unity-k').unidade,
}
},
calorEspecífico: {
valor: 14304,
unidade: 'J/(kg·K)'
},
condutividadeEletrica: {
valor: 106,
unidade: 'S/m'
},
condutividadeTermica: {
valor: 0.1815,
unidade: 'W/(m·K)'
}
}
}
}
Aposto que percebeu essa parte diferente:
meiaVida: require('property-meiavida-h'),
estadoOxidacao: require('property-estado-oxidacao-h'),
estruturaCristalina: require('property-estrutura-cristalina-h'),
eletronegatividadePauling: require('property-eletronegatividade-de-pauling-h'),
Isso é porque já comecei a modularizar cada PROPRIEDADE para criar um módulo que será um GERADOR de propriedades para facilitar a criação dos outros elementos.
Sim iremos ATOMIZAR cada propriedade para facilitar o reuso.
SEMPRE PRECISA TER valor
! Pois é uma propriedade, isso é o mínimo.
O padrão, por hora, é:
module.exports = {
valor: Any, // String or Number
unidade: String,
descricao: String, // default null
}
Vejamos alguns exemplos:
// H-eletronegatividadePauling
module.exports = {
valor: 2.2,
unidade: 'eV',
descricao: null
}
ps: Sem descrição.
// H-estadoOxidacao
module.exports = {
valor: '1+',
unidade: null,
descricao: null
}
ps: Sem descrição e unidade.
module.exports = {
valor: 12.3,
unidade: require('unity-a').unidade,
descricao: null
}
ps: Sem descrição porém importando a unidade.
Essas são as propriedades dos metais:
- Condutibilidade
- Ductibilidade
- Maleabilidade
- Eletromagnetismo
- Ferromagnetismo
- Magnetismo
- Paramagnetismo
- Momento magnético
- Radiação eletromagnética
- Emissão espontânea
- Ligantes
- Permeabilidade magnética
- Susceptibilidade magnética
- Campo magnético
- Física do estado sólido
- Função de onda
- Banda de valência
- Banda de condução
- Entropia negativa
- Ondas eletromagnéticas
- Carga Nuclear Efetiva
- Lei da conservação da carga
Seguindo a lógica também modularizamos as unidades pois poderão ser reusadas.
O padrão é:
module.exports = {
unidade: String,
nome: String,
validate: Function,
descricao: String
}
Exemplos:
// K
module.exports = {
unidade: 'K',
nome: 'Kelvin',
validate: (value) => true,
descricao: 'Mede a temperatura absoluta'
}
// a
module.exports = {
unidade: 'a',
nome: 'anos',
validate: (value) => (value > 0),
descricao: 'Picometro é bem pequeno'
}
// Pa
module.exports = {
unidade: 'Pa',
nome: 'Pascal',
validate: (value) => true,
descricao: 'Mede a pressão'
}
// pm
module.exports = {
unidade: 'pm',
nome: 'picômetro',
valor: Math.pow(10, -6), // relativo ao metro
validate: (value) => !isNaN(value),
descricao: 'Picometro é bem pequeno'
}
Obviamente teremos uma API para fornecer TODA a informação sobre os elementos e moléculas da Química.
Pensamos em facilitar a identificação dos elementos além do nome da sua categoria e tipo, trocarmos por emojis já existentes em qualquer celular.
Gasoso: 💨
- /api/atoms/gaseous
- /api/atoms/💨
- /api/👤/💨
- /api/molecules/💨
- /api/👥/💨
Líquido: 💧
- /api/atoms/liquid
- /api/atoms/💧
- /api/👤/💧
- /api/molecules/💧
- /api/👥/💧
Sólido: 💎
- /api/atoms/solids
- /api/atoms/💎
- /api/👤/💎
- /api/molecules/💎
- /api/👥/💎
- Ácidos
- Bases
- Sais
- Óxidos
- NOME IUPAC
- NOME USUAL
- ESTADO DA COMPOSTO
- FORMA IÔNICA
- PROPRIEDADES FISICO-QUIMICAS:
- Afinidade (tanto pelos atomos quanto pelo tipo da molécula)
- Solubilidade (Kps)
- Quantidade de materia (mol/L)
- Geometria molecular
- Estado de oxidação do átomo presente na molécula
- Ponto de fusão
- Ponto de ebulição
- Valor da energia Livre de Gibs (deltah)
- Valor da energia de entalpia